diff --git a/dependencies.gradle b/dependencies.gradle index 83bb0ca..3ebc8cc 100644 --- a/dependencies.gradle +++ b/dependencies.gradle @@ -35,4 +35,5 @@ */ dependencies { api('com.github.GTNewHorizons:SpongePoweredMixin:0.8.5-GTNH-2:dev') + api('com.github.GTNewHorizons:GT5-Unofficial:5.09.44.30:dev') } diff --git a/src/main/java/com/myname/mymodid/API/ItemStackKey.java b/src/main/java/com/myname/mymodid/API/ItemStackKey.java index 91fc66e..429e409 100644 --- a/src/main/java/com/myname/mymodid/API/ItemStackKey.java +++ b/src/main/java/com/myname/mymodid/API/ItemStackKey.java @@ -17,9 +17,10 @@ public class ItemStackKey { @Override public boolean equals(Object o) { - if (o == null || getClass() != o.getClass()) return false; - ItemStackKey that = (ItemStackKey) o; - return (this.meta == that.meta) && Objects.equals(this.item, that.item); + if (o == null) return false; + if (o instanceof ItemStackKey that) { + return (this.meta == that.meta) && (this.item == that.item); + } else return false; } @Override diff --git a/src/main/java/com/myname/mymodid/MyMod.java b/src/main/java/com/myname/mymodid/MyMod.java index faa0499..58d32a0 100644 --- a/src/main/java/com/myname/mymodid/MyMod.java +++ b/src/main/java/com/myname/mymodid/MyMod.java @@ -21,7 +21,7 @@ public class MyMod { @Mod.EventHandler public void preInit(FMLPreInitializationEvent event) { - ReplacementManager.addReplacement(Items.apple, 0, Items.bow, 10); + ReplacementManager.addReplacement(Items.iron_ingot, 0, Items.bow, 10); proxy.preInit(event); } diff --git a/src/main/java/com/myname/mymodid/mixins/early/MixinItemStack.java b/src/main/java/com/myname/mymodid/mixins/early/MixinItemStack.java index 8fad805..a8065ed 100644 --- a/src/main/java/com/myname/mymodid/mixins/early/MixinItemStack.java +++ b/src/main/java/com/myname/mymodid/mixins/early/MixinItemStack.java @@ -17,6 +17,8 @@ public abstract class MixinItemStack { @Shadow private int itemDamage; // Metadata + @Shadow + private cpw.mods.fml.common.registry.RegistryDelegate delegate; @Inject(method = "(Lnet/minecraft/item/Item;II)V", at = @At("RETURN")) private void onConstructorReturn(Item item, int size, int metadata, CallbackInfo ci) { @@ -24,17 +26,17 @@ public abstract class MixinItemStack { // Edit private variables here. itemDamage = replacement.getDamage(); - field_151002_e = replacement.getItem(); + delegate = replacement.getItem().delegate; } - @Shadow - private Item field_151002_e; +/* @Shadow + private Item field_151002_e;*/ @Inject(method = "readFromNBT(Lnet/minecraft/nbt/NBTTagCompound;)V", at = @At("RETURN")) private void onReadFromNBTReturn(NBTTagCompound p_77963_1_, CallbackInfo ci) { - ItemStackKey replacement = ReplacementManager.getReplacement(field_151002_e, itemDamage); + ItemStackKey replacement = ReplacementManager.getReplacement(delegate.get(), itemDamage); - field_151002_e = replacement.getItem(); + delegate = replacement.getItem().delegate; itemDamage = replacement.getDamage(); }