aboutsummaryrefslogtreecommitdiff
path: root/api/src
diff options
context:
space:
mode:
authorshedaniel <daniel@shedaniel.me>2024-04-10 02:50:13 +0900
committershedaniel <daniel@shedaniel.me>2024-04-10 20:37:13 +0900
commitfccc677951d7d5352ab7bf154951b7198d440e90 (patch)
treea641e63c744d00ed991cf673c310a69130c9d5b9 /api/src
parentaebe0f1c05e5b8240b5136f3ab4f1e4a84039d96 (diff)
downloadRoughlyEnoughItems-fccc677951d7d5352ab7bf154951b7198d440e90.tar.gz
RoughlyEnoughItems-fccc677951d7d5352ab7bf154951b7198d440e90.tar.bz2
RoughlyEnoughItems-fccc677951d7d5352ab7bf154951b7198d440e90.zip
Update to 24w14a
Diffstat (limited to 'api/src')
-rw-r--r--api/src/main/java/me/shedaniel/rei/api/client/gui/widgets/TooltipContext.java23
-rw-r--r--api/src/main/java/me/shedaniel/rei/api/common/transfer/info/simple/DumpHandler.java2
-rw-r--r--api/src/main/java/me/shedaniel/rei/impl/ClientInternals.java10
3 files changed, 20 insertions, 15 deletions
diff --git a/api/src/main/java/me/shedaniel/rei/api/client/gui/widgets/TooltipContext.java b/api/src/main/java/me/shedaniel/rei/api/client/gui/widgets/TooltipContext.java
index 085eb772b..43be06845 100644
--- a/api/src/main/java/me/shedaniel/rei/api/client/gui/widgets/TooltipContext.java
+++ b/api/src/main/java/me/shedaniel/rei/api/client/gui/widgets/TooltipContext.java
@@ -28,6 +28,7 @@ import me.shedaniel.math.impl.PointHelper;
import me.shedaniel.rei.impl.ClientInternals;
import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
+import net.minecraft.world.item.Item;
import net.minecraft.world.item.TooltipFlag;
import org.jetbrains.annotations.ApiStatus;
import org.jetbrains.annotations.Nullable;
@@ -35,24 +36,24 @@ import org.jetbrains.annotations.Nullable;
@Environment(EnvType.CLIENT)
@ApiStatus.NonExtendable
public interface TooltipContext {
- static TooltipContext of() {
- return TooltipContext.of(new Point());
+ static TooltipContext of(Item.TooltipContext vanillaContext) {
+ return TooltipContext.of(new Point(), vanillaContext);
}
- static TooltipContext of(Point point) {
- return TooltipContext.of(point, null);
+ static TooltipContext of(Point point, Item.TooltipContext vanillaContext) {
+ return TooltipContext.of(point, vanillaContext, null);
}
- static TooltipContext of(Point point, @Nullable TooltipFlag flag) {
- return TooltipContext.of(point, flag, false);
+ static TooltipContext of(Point point, Item.TooltipContext vanillaContext, @Nullable TooltipFlag flag) {
+ return TooltipContext.of(point, vanillaContext, flag, false);
}
- static TooltipContext of(Point point, @Nullable TooltipFlag flag, boolean isSearch) {
- return ClientInternals.createTooltipContext(point, flag, isSearch);
+ static TooltipContext of(Point point, Item.TooltipContext vanillaContext, @Nullable TooltipFlag flag, boolean isSearch) {
+ return ClientInternals.createTooltipContext(point, flag, isSearch, vanillaContext);
}
- static TooltipContext ofMouse() {
- return TooltipContext.of(PointHelper.ofMouse());
+ static TooltipContext ofMouse(Item.TooltipContext vanillaContext) {
+ return TooltipContext.of(PointHelper.ofMouse(), vanillaContext);
}
TooltipFlag getFlag();
@@ -60,4 +61,6 @@ public interface TooltipContext {
Point getPoint();
boolean isSearch();
+
+ Item.TooltipContext vanillaContext();
}
diff --git a/api/src/main/java/me/shedaniel/rei/api/common/transfer/info/simple/DumpHandler.java b/api/src/main/java/me/shedaniel/rei/api/common/transfer/info/simple/DumpHandler.java
index 9f1fe8593..dda6344df 100644
--- a/api/src/main/java/me/shedaniel/rei/api/common/transfer/info/simple/DumpHandler.java
+++ b/api/src/main/java/me/shedaniel/rei/api/common/transfer/info/simple/DumpHandler.java
@@ -55,6 +55,6 @@ public interface DumpHandler<T extends AbstractContainerMenu, D extends Display>
}
static boolean canStackAddMore(ItemStack existingStack, ItemStack stack) {
- return !existingStack.isEmpty() && ItemStack.isSameItemSameTags(existingStack, stack) && existingStack.isStackable() && existingStack.getCount() + stack.getCount() <= existingStack.getMaxStackSize();
+ return !existingStack.isEmpty() && ItemStack.isSameItemSameComponents(existingStack, stack) && existingStack.isStackable() && existingStack.getCount() + stack.getCount() <= existingStack.getMaxStackSize();
}
}
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 27e4280d1..f4f36769c 100644
--- a/api/src/main/java/me/shedaniel/rei/impl/ClientInternals.java
+++ b/api/src/main/java/me/shedaniel/rei/impl/ClientInternals.java
@@ -47,14 +47,16 @@ import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
import net.minecraft.client.gui.components.events.GuiEventListener;
import net.minecraft.client.gui.screens.inventory.tooltip.ClientTooltipComponent;
+import net.minecraft.data.models.blockstates.PropertyDispatch;
import net.minecraft.nbt.CompoundTag;
import net.minecraft.network.chat.Component;
import net.minecraft.network.chat.FormattedText;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.inventory.tooltip.TooltipComponent;
+import net.minecraft.world.item.Item;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.TooltipFlag;
-import org.apache.commons.lang3.function.TriFunction;
+import org.apache.commons.io.function.IOQuadFunction;
import org.jetbrains.annotations.ApiStatus;
import org.jetbrains.annotations.Nullable;
import org.joml.Matrix4f;
@@ -83,7 +85,7 @@ public final class ClientInternals {
private static Function<Boolean, ClickArea.Result> clickAreaHandlerResult = (result) -> throwNotSetup();
private static BiConsumer<List<ClientTooltipComponent>, TooltipComponent> clientTooltipComponentProvider = (tooltip, result) -> throwNotSetup();
private static BiFunction<@Nullable Point, Collection<Tooltip.Entry>, Tooltip> tooltipProvider = (point, texts) -> throwNotSetup();
- private static TriFunction<Point, @Nullable TooltipFlag, Boolean, TooltipContext> tooltipContextProvider = (point, texts, search) -> throwNotSetup();
+ private static PropertyDispatch.QuadFunction<Point, @Nullable TooltipFlag, Boolean, Item.TooltipContext, TooltipContext> tooltipContextProvider = (point, texts, search, context) -> throwNotSetup();
private static Function<Object, Tooltip.Entry> tooltipEntryProvider = (component) -> throwNotSetup();
private static Supplier<List<String>> jeiCompatMods = ClientInternals::throwNotSetup;
private static Supplier<Object> builtinClientPlugin = ClientInternals::throwNotSetup;
@@ -146,8 +148,8 @@ public final class ClientInternals {
return tooltipProvider.apply(point, texts);
}
- public static TooltipContext createTooltipContext(Point point, @Nullable TooltipFlag flag, boolean isSearch) {
- return tooltipContextProvider.apply(point, flag, isSearch);
+ public static TooltipContext createTooltipContext(Point point, @Nullable TooltipFlag flag, boolean isSearch, Item.TooltipContext context) {
+ return tooltipContextProvider.apply(point, flag, isSearch, context);
}
public static Tooltip.Entry createTooltipEntry(Object component) {