From b657842bcddcb65fb658d4cd9835e7fa15e1c236 Mon Sep 17 00:00:00 2001 From: shedaniel Date: Sun, 16 May 2021 17:45:22 +0800 Subject: Update JEI API to 7.6.4 & Fix #520 --- .../rei/plugin/client/entry/FluidEntryDefinition.java | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) (limited to 'runtime/src/main/java/me/shedaniel/rei/plugin') diff --git a/runtime/src/main/java/me/shedaniel/rei/plugin/client/entry/FluidEntryDefinition.java b/runtime/src/main/java/me/shedaniel/rei/plugin/client/entry/FluidEntryDefinition.java index 148eba7b4..c42ac3341 100644 --- a/runtime/src/main/java/me/shedaniel/rei/plugin/client/entry/FluidEntryDefinition.java +++ b/runtime/src/main/java/me/shedaniel/rei/plugin/client/entry/FluidEntryDefinition.java @@ -40,10 +40,10 @@ import me.shedaniel.rei.api.client.util.SpriteRenderer; import me.shedaniel.rei.api.common.entry.EntrySerializer; import me.shedaniel.rei.api.common.entry.EntryStack; import me.shedaniel.rei.api.common.entry.comparison.ComparisonContext; +import me.shedaniel.rei.api.common.entry.comparison.FluidComparatorRegistry; import me.shedaniel.rei.api.common.entry.type.EntryDefinition; import me.shedaniel.rei.api.common.entry.type.EntryType; import me.shedaniel.rei.api.common.entry.type.VanillaEntryTypes; -import me.shedaniel.rei.api.common.util.EntryStacks; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.minecraft.ChatFormatting; @@ -62,7 +62,6 @@ import net.minecraft.tags.TagCollection; import net.minecraft.tags.TagContainer; import net.minecraft.util.Mth; import net.minecraft.world.inventory.InventoryMenu; -import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.material.FlowingFluid; import net.minecraft.world.level.material.Fluid; import org.jetbrains.annotations.Nullable; @@ -70,7 +69,6 @@ import org.jetbrains.annotations.Nullable; import java.util.Collection; import java.util.Collections; import java.util.List; -import java.util.Objects; import java.util.stream.Collectors; import java.util.stream.Stream; @@ -128,7 +126,7 @@ public class FluidEntryDefinition implements EntryDefinition, EntryS public long hash(EntryStack entry, FluidStack value, ComparisonContext context) { int code = 1; code = 31 * code + value.getFluid().hashCode(); - code = 31 * code + (context.isFuzzy() || !value.hasTag() ? 0 : value.getTag().hashCode()); + code = 31 * code + Long.hashCode(FluidComparatorRegistry.getInstance().hashOf(context, value)); return code; } @@ -136,13 +134,7 @@ public class FluidEntryDefinition implements EntryDefinition, EntryS public boolean equals(FluidStack o1, FluidStack o2, ComparisonContext context) { if (o1.getFluid() != o2.getFluid()) return false; - return context.isFuzzy() || isTagEqual(o1, o2); - } - - private boolean isTagEqual(FluidStack o1, FluidStack o2) { - CompoundTag tag1 = o1.getTag(); - CompoundTag tag2 = o2.getTag(); - return Objects.equals(tag1, tag2); + return FluidComparatorRegistry.getInstance().hashOf(context, o1) == FluidComparatorRegistry.getInstance().hashOf(context, o2); } @Override -- cgit