diff options
75 files changed, 269 insertions, 861 deletions
diff --git a/api/src/main/java/me/shedaniel/rei/api/client/favorites/CompoundFavoriteRenderer.java b/api/src/main/java/me/shedaniel/rei/api/client/favorites/CompoundFavoriteRenderer.java index 858d43aa5..a0b654e66 100644 --- a/api/src/main/java/me/shedaniel/rei/api/client/favorites/CompoundFavoriteRenderer.java +++ b/api/src/main/java/me/shedaniel/rei/api/client/favorites/CompoundFavoriteRenderer.java @@ -24,7 +24,6 @@ package me.shedaniel.rei.api.client.favorites; import com.mojang.blaze3d.vertex.PoseStack; -import com.mojang.math.Vector4f; import me.shedaniel.clothconfig2.api.ScissorsHandler; import me.shedaniel.clothconfig2.api.animator.NumberAnimator; import me.shedaniel.clothconfig2.api.animator.ValueAnimator; @@ -34,6 +33,7 @@ import me.shedaniel.rei.api.client.gui.Renderer; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.minecraft.Util; +import org.joml.Vector4f; import java.util.List; import java.util.function.IntFunction; @@ -92,9 +92,9 @@ public class CompoundFavoriteRenderer extends AbstractRenderer { public void render(PoseStack matrices, Rectangle bounds, int mouseX, int mouseY, float delta) { updateAnimator(delta); Vector4f vector4f = new Vector4f(bounds.x, bounds.y, 0, 1.0F); - vector4f.transform(matrices.last().pose()); + matrices.last().pose().transform(vector4f); Vector4f vector4f2 = new Vector4f(bounds.getMaxX(), bounds.getMaxY(), 0, 1.0F); - vector4f2.transform(matrices.last().pose()); + matrices.last().pose().transform(vector4f2); scissorArea.setBounds((int) vector4f.x(), (int) vector4f.y(), (int) vector4f2.x() - (int) vector4f.x(), (int) vector4f2.y() - (int) vector4f.y()); ScissorsHandler.INSTANCE.scissor(scissorArea); matrices.pushPose(); diff --git a/api/src/main/java/me/shedaniel/rei/api/client/gui/widgets/Widget.java b/api/src/main/java/me/shedaniel/rei/api/client/gui/widgets/Widget.java index 2e683f51a..438e0f53b 100644 --- a/api/src/main/java/me/shedaniel/rei/api/client/gui/widgets/Widget.java +++ b/api/src/main/java/me/shedaniel/rei/api/client/gui/widgets/Widget.java @@ -24,8 +24,6 @@ package me.shedaniel.rei.api.client.gui.widgets; import com.mojang.blaze3d.vertex.PoseStack; -import com.mojang.math.Matrix4f; -import com.mojang.math.Vector4f; import me.shedaniel.clothconfig2.api.ScissorsHandler; import me.shedaniel.math.Point; import me.shedaniel.math.Rectangle; @@ -37,7 +35,10 @@ import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.Font; +import net.minecraft.client.gui.components.Renderable; import org.jetbrains.annotations.ApiStatus; +import org.joml.Matrix4f; +import org.joml.Vector4f; import java.util.Stack; @@ -47,7 +48,7 @@ import java.util.Stack; * @see WidgetWithBounds for a widget with bounds */ @Environment(EnvType.CLIENT) -public abstract class Widget extends AbstractContainerEventHandler implements net.minecraft.client.gui.components.Widget, Renderer { +public abstract class Widget extends AbstractContainerEventHandler implements Renderable, Renderer { /** * The Minecraft Client instance @@ -76,13 +77,13 @@ public abstract class Widget extends AbstractContainerEventHandler implements ne } public static Point translateMouse(double x, double y, double z) { - return translateMouse(Matrix4f.createTranslateMatrix((float) x, (float) y, (float) z)); + return translateMouse(new Matrix4f().translate((float) x, (float) y, (float) z)); } public static Point translateMouse(Matrix4f pose) { Point mouse = mouse(); Vector4f mouseVec = new Vector4f(mouse.x, mouse.y, 0, 1); - mouseVec.transform(pose); + pose.transform(mouseVec); return pushMouse(new Point(mouseVec.x(), mouseVec.y())); } diff --git a/api/src/main/java/me/shedaniel/rei/api/client/gui/widgets/Widgets.java b/api/src/main/java/me/shedaniel/rei/api/client/gui/widgets/Widgets.java index 028947c34..b9171dae2 100644 --- a/api/src/main/java/me/shedaniel/rei/api/client/gui/widgets/Widgets.java +++ b/api/src/main/java/me/shedaniel/rei/api/client/gui/widgets/Widgets.java @@ -24,7 +24,6 @@ package me.shedaniel.rei.api.client.gui.widgets; import com.google.common.collect.AbstractIterator; -import com.mojang.math.Matrix4f; import me.shedaniel.math.Dimension; import me.shedaniel.math.Point; import me.shedaniel.math.Rectangle; @@ -43,6 +42,7 @@ import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvents; import org.jetbrains.annotations.ApiStatus; import org.jetbrains.annotations.Nullable; +import org.joml.Matrix4f; import java.util.*; import java.util.function.Consumer; @@ -106,7 +106,7 @@ public final class Widgets { } public static WidgetWithBounds withTranslate(Widget widget, double x, double y, double z) { - return withTranslate(widget, Matrix4f.createTranslateMatrix((float) x, (float) y, (float) z)); + return withTranslate(widget, new Matrix4f().translate((float) x, (float) y, (float) z)); } public static WidgetWithBounds withTranslate(Widget widget, Matrix4f translate) { diff --git a/api/src/main/java/me/shedaniel/rei/api/client/registry/entry/EntryRegistry.java b/api/src/main/java/me/shedaniel/rei/api/client/registry/entry/EntryRegistry.java index 63ed14d72..d2deaac32 100644 --- a/api/src/main/java/me/shedaniel/rei/api/client/registry/entry/EntryRegistry.java +++ b/api/src/main/java/me/shedaniel/rei/api/client/registry/entry/EntryRegistry.java @@ -96,7 +96,9 @@ public interface EntryRegistry extends Reloadable<REIClientPlugin> { * * @param item the item to find * @return the list of possible stacks, will never be empty. + * @deprecated deprecated logic due to 1.19.3 new creative tabs logic */ + @Deprecated(forRemoval = true) List<ItemStack> appendStacksForItem(Item item); /** diff --git a/api/src/main/java/me/shedaniel/rei/api/client/util/MatrixUtils.java b/api/src/main/java/me/shedaniel/rei/api/client/util/MatrixUtils.java index f03d16315..bcdfe33c7 100644 --- a/api/src/main/java/me/shedaniel/rei/api/client/util/MatrixUtils.java +++ b/api/src/main/java/me/shedaniel/rei/api/client/util/MatrixUtils.java @@ -23,12 +23,12 @@ package me.shedaniel.rei.api.client.util; -import com.mojang.math.Matrix4f; import com.mojang.math.Transformation; -import com.mojang.math.Vector4f; import me.shedaniel.math.Point; import me.shedaniel.math.Rectangle; import org.jetbrains.annotations.ApiStatus; +import org.joml.Matrix4f; +import org.joml.Vector4f; @ApiStatus.Experimental public class MatrixUtils { @@ -41,9 +41,9 @@ public class MatrixUtils { public static Rectangle transform(Matrix4f matrix, Rectangle rectangle) { Vector4f vec1 = new Vector4f((float) rectangle.x, (float) rectangle.y, 0, 1); - vec1.transform(matrix); + matrix.transform(vec1); Vector4f vec2 = new Vector4f((float) rectangle.getMaxX(), (float) rectangle.getMaxY(), 0, 1); - vec2.transform(matrix); + matrix.transform(vec2); int x1 = Math.round(vec1.x()); int x2 = Math.round(vec2.x()); int y1 = Math.round(vec1.y()); @@ -53,7 +53,7 @@ public class MatrixUtils { public static Point transform(Matrix4f matrix, Point point) { Vector4f mouse = new Vector4f((float) point.x, (float) point.y, 0, 1); - mouse.transform(matrix); + matrix.transform(mouse); return new Point(mouse.x(), mouse.y()); } } diff --git a/api/src/main/java/me/shedaniel/rei/api/client/util/SpriteRenderer.java b/api/src/main/java/me/shedaniel/rei/api/client/util/SpriteRenderer.java index d700051ad..f272839de 100644 --- a/api/src/main/java/me/shedaniel/rei/api/client/util/SpriteRenderer.java +++ b/api/src/main/java/me/shedaniel/rei/api/client/util/SpriteRenderer.java @@ -26,15 +26,14 @@ package me.shedaniel.rei.api.client.util; import com.mojang.blaze3d.systems.RenderSystem; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; -import com.mojang.math.Matrix3f; -import com.mojang.math.Matrix4f; -import me.shedaniel.rei.impl.VersionAdapter; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; import net.minecraft.client.renderer.texture.TextureAtlasSprite; import net.minecraft.resources.ResourceLocation; +import org.joml.Matrix3f; +import org.joml.Matrix4f; @Environment(EnvType.CLIENT) public class SpriteRenderer { @@ -192,7 +191,7 @@ public class SpriteRenderer { throw new RuntimeException("Invalid Sprite!"); } - next(VersionAdapter.INSTANCE.spriteName(sprite)); + next(sprite.contents().name()); } public void next(ResourceLocation texture) { @@ -213,8 +212,8 @@ public class SpriteRenderer { this.normal = this.matrices.last().normal(); } - float sX = VersionAdapter.INSTANCE.spriteWidth(sprite); - float sY = VersionAdapter.INSTANCE.spriteHeight(sprite); + float sX = sprite.contents().width(); + float sY = sprite.contents().height(); RenderSystem.setShaderTexture(0, texture); diff --git a/api/src/main/java/me/shedaniel/rei/impl/ClientInternals.java b/api/src/main/java/me/shedaniel/rei/impl/ClientInternals.java index 36456399b..653c659d6 100644 --- a/api/src/main/java/me/shedaniel/rei/impl/ClientInternals.java +++ b/api/src/main/java/me/shedaniel/rei/impl/ClientInternals.java @@ -23,7 +23,6 @@ package me.shedaniel.rei.impl; -import com.mojang.math.Matrix4f; import com.mojang.serialization.DataResult; import me.shedaniel.math.Point; import me.shedaniel.math.Rectangle; @@ -51,6 +50,7 @@ import net.minecraft.world.item.TooltipFlag; import org.apache.commons.lang3.function.TriFunction; import org.jetbrains.annotations.ApiStatus; import org.jetbrains.annotations.Nullable; +import org.joml.Matrix4f; import java.lang.reflect.Field; import java.util.Collection; diff --git a/api/src/main/java/me/shedaniel/rei/impl/VersionAdapter.java b/api/src/main/java/me/shedaniel/rei/impl/VersionAdapter.java deleted file mode 100644 index 24d57ab7c..000000000 --- a/api/src/main/java/me/shedaniel/rei/impl/VersionAdapter.java +++ /dev/null @@ -1,102 +0,0 @@ -/* - * This file is licensed under the MIT License, part of Roughly Enough Items. - * Copyright (c) 2018, 2019, 2020, 2021, 2022 shedaniel - * - * Permission is |
