diff --git a/common/src/main/java/muramasa/antimatter/tool/AntimatterToolType.java b/common/src/main/java/muramasa/antimatter/tool/AntimatterToolType.java index 189bfe22c..0fea120a1 100644 --- a/common/src/main/java/muramasa/antimatter/tool/AntimatterToolType.java +++ b/common/src/main/java/muramasa/antimatter/tool/AntimatterToolType.java @@ -44,7 +44,7 @@ public class AntimatterToolType implements ISharedAntimatterObject { private final Object2ObjectMap> behaviours = new Object2ObjectOpenHashMap<>(); private ImmutableMap> brokenItems = ImmutableMap.of(); private final List tooltip = new ObjectArrayList<>(); - private boolean powered, repairable, blockBreakability, hasContainer, simple, hasSecondary; + private boolean powered, repairable, blockBreakability, hasContainer, simple, hasSecondary, originalTag = true; private long baseMaxEnergy; private int[] energyTiers; private final int useDurability, attackDurability, craftingDurability; @@ -214,6 +214,7 @@ public AntimatterToolType setMaterialType(MaterialTypeItem materialTypeItem){ } public AntimatterToolType setTag(AntimatterToolType tag) { + this.originalTag = false; this.tag = tag.getTag(); this.forgeTag = tag.getForgeTag(); return this; @@ -226,6 +227,7 @@ public AntimatterToolType setType(AntimatterToolType tag) { return this; } public AntimatterToolType setTag(ResourceLocation loc) { + this.originalTag = false; this.tag = TagUtils.getItemTag(loc); this.forgeTag = TagUtils.getForgelikeItemTag("tools/" + loc.getPath()); return this; @@ -416,6 +418,10 @@ public boolean hasContainer() { return hasContainer; } + public boolean hasOriginalTag(){ + return originalTag; + } + public long getBaseMaxEnergy() { return baseMaxEnergy; } diff --git a/common/src/main/java/muramasa/antimatter/util/Utils.java b/common/src/main/java/muramasa/antimatter/util/Utils.java index fbc6ef76d..95893d7c6 100644 --- a/common/src/main/java/muramasa/antimatter/util/Utils.java +++ b/common/src/main/java/muramasa/antimatter/util/Utils.java @@ -1301,6 +1301,7 @@ public static boolean isPlayerHolding(Player player, InteractionHand hand, Antim public static AntimatterToolType getToolType(Player player) { ItemStack stack = player.getMainHandItem(); for (AntimatterToolType ty : AntimatterAPI.all(AntimatterToolType.class)) { + if (!ty.hasOriginalTag()) continue; if (stack.is(ty.getTag())){ return ty; }