From 1d3fb609406e3487408d9efe3ef70429c17ef4bf Mon Sep 17 00:00:00 2001 From: Olof Larsson Date: Mon, 30 Apr 2018 21:08:37 +0200 Subject: [PATCH] Use DataItemStack for equals checking, Buckit equals can not be trusted for shields --- src/com/massivecraft/massivecore/util/InventoryUtil.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/com/massivecraft/massivecore/util/InventoryUtil.java b/src/com/massivecraft/massivecore/util/InventoryUtil.java index 46bab49a..fce7272e 100644 --- a/src/com/massivecraft/massivecore/util/InventoryUtil.java +++ b/src/com/massivecraft/massivecore/util/InventoryUtil.java @@ -5,6 +5,7 @@ import com.massivecraft.massivecore.collections.MassiveList; import com.massivecraft.massivecore.comparator.ComparatorComparable; import com.massivecraft.massivecore.comparator.ComparatorEntryValue; import com.massivecraft.massivecore.event.EventMassiveCoreLorePriority; +import com.massivecraft.massivecore.item.DataItemStack; import com.massivecraft.massivecore.mixin.MixinInventory; import com.massivecraft.massivecore.predicate.Predicate; import com.massivecraft.massivecore.predicate.PredicateStringStartsWith; @@ -1023,7 +1024,10 @@ public class InventoryUtil { if (isNothing(one)) return isNothing(two); if (isNothing(two)) return false; - return one.equals(two); + + DataItemStack dataOne = DataItemStack.fromBukkit(one); + DataItemStack dataTwo = DataItemStack.fromBukkit(two); + return dataOne.equals(dataTwo); } public static boolean equals(ItemStack[] one, ItemStack[] two)