aboutsummaryrefslogtreecommitdiff
path: root/api
diff options
context:
space:
mode:
Diffstat (limited to 'api')
-rw-r--r--api/src/main/java/me/shedaniel/rei/api/client/favorites/CompoundFavoriteRenderer.java6
-rw-r--r--api/src/main/java/me/shedaniel/rei/api/client/gui/widgets/Widget.java11
-rw-r--r--api/src/main/java/me/shedaniel/rei/api/client/gui/widgets/Widgets.java4
-rw-r--r--api/src/main/java/me/shedaniel/rei/api/client/registry/entry/EntryRegistry.java2
-rw-r--r--api/src/main/java/me/shedaniel/rei/api/client/util/MatrixUtils.java10
-rw-r--r--api/src/main/java/me/shedaniel/rei/api/client/util/SpriteRenderer.java11
-rw-r--r--api/src/main/java/me/shedaniel/rei/impl/ClientInternals.java2
-rw-r--r--api/src/main/java/me/shedaniel/rei/impl/VersionAdapter.java102
8 files changed, 24 insertions, 124 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 hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-package me.shedaniel.rei.impl;
-
-import me.shedaniel.rei.api.client.registry.entry.EntryRegistry;
-import me.shedaniel.rei.api.common.entry.EntryStack;
-import me.shedaniel.rei.api.common.util.EntryIngredients;
-import me.shedaniel.rei.api.common.util.EntryStacks;
-import net.fabricmc.api.EnvType;
-import net.fabricmc.api.Environment;
-import net.minecraft.client.renderer.texture.TextureAtlasSprite;
-import net.minecraft.core.Holder;
-import net.minecraft.core.Registry;
-import net.minecraft.resources.ResourceKey;
-import net.minecraft.resources.ResourceLocation;
-import net.minecraft.world.item.Item;
-import net.minecraft.world.item.ItemStack;
-import org.jetbrains.annotations.ApiStatus;
-
-import java.util.Comparator;
-import java.util.List;
-import java.util.Optional;
-
-@ApiStatus.Internal
-public interface VersionAdapter {
- VersionAdapter INSTANCE = load();
-
- private static VersionAdapter load() {
- try {
- Class.forName("me.shedaniel.rei.impl.init.versions.Version1_19_3AdapterCheck");
- return (VersionAdapter) Class.forName("me.shedaniel.rei.impl.init.versions.Version1_19_3Adapter").getDeclaredConstructor().newInstance();
- } catch (Throwable throwable) {
- }
- try {
- Class.forName("me.shedaniel.rei.impl.init.versions.Version1_19_1AdapterCheck");
- return (VersionAdapter) Class.forName("me.shedaniel.rei.impl.init.versions.Version1_19_1Adapter").getDeclaredConstructor().newInstance();
- } catch (Throwable throwable) {
- }
- try {
- return (VersionAdapter) Class.forName("me.shedaniel.rei.impl.init.versions.Version1_19Adapter").getDeclaredConstructor().newInstance();
- } catch (Throwable throwable) {
- throw new RuntimeException(throwable);
- }
- }
-
- @Environment(EnvType.CLIENT)
- default void registerDefaultItems(EntryRegistry registry) {
- for (Item item : Registry.ITEM) {
- try {
- registry.addEntries(EntryIngredients.ofItemStacks(registry.appendStacksForItem(item)));
- } catch (Exception ignored) {
- registry.addEntry(EntryStacks.of(item));
- }
- }
- }
-
- @Environment(EnvType.CLIENT)
- List<ItemStack> appendStacksForItem(Item item, Comparator<ItemStack> comparator);
-
- @Environment(EnvType.CLIENT)
- ResourceLocation spriteAtlasLocation(TextureAtlasSprite sprite);
-
- @Environment(EnvType.CLIENT)
- ResourceLocation spriteName(TextureAtlasSprite sprite);
-
- @Environment(EnvType.CLIENT)
- int spriteWidth(TextureAtlasSprite sprite);
-
- @Environment(EnvType.CLIENT)
- int spriteHeight(TextureAtlasSprite sprite);
-
- <T> Optional<Holder<T>> getHolder(Registry<T> registry, ResourceKey<T> key);
-
- <T> Optional<Holder<T>> getHolder(Registry<T> registry, int id);
-
- @Environment(EnvType.CLIENT)
- void sendCommand(String command);
-
- @Environment(EnvType.CLIENT)
- Comparator<? super EntryStack<?>> getEntryGroupComparator();
-}