From 441e7b8952e4f84bb0a99814904cc3ef55583c66 Mon Sep 17 00:00:00 2001 From: Nicholas Ignoffo Date: Sat, 17 Feb 2018 10:38:33 -0800 Subject: [PATCH] Fix Lava Crystal being consumed --- .../bloodmagic/item/ItemLavaCrystal.java | 26 +++++++++++++------ 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/src/main/java/WayofTime/bloodmagic/item/ItemLavaCrystal.java b/src/main/java/WayofTime/bloodmagic/item/ItemLavaCrystal.java index 81c127fc..b64edd65 100644 --- a/src/main/java/WayofTime/bloodmagic/item/ItemLavaCrystal.java +++ b/src/main/java/WayofTime/bloodmagic/item/ItemLavaCrystal.java @@ -1,6 +1,7 @@ package WayofTime.bloodmagic.item; import WayofTime.bloodmagic.BloodMagic; +import WayofTime.bloodmagic.util.Constants; import WayofTime.bloodmagic.util.helper.NetworkHelper; import WayofTime.bloodmagic.util.helper.PlayerHelper; import WayofTime.bloodmagic.client.IVariantProvider; @@ -21,11 +22,13 @@ public class ItemLavaCrystal extends ItemBindableBase implements IVariantProvide @Override public ItemStack getContainerItem(ItemStack itemStack) { - NetworkHelper.getSoulNetwork(this.getOwnerUUID(itemStack)).syphon(25); - ItemStack copiedStack = itemStack.copy(); - copiedStack.setItemDamage(copiedStack.getItemDamage()); - copiedStack.setCount(1); - return copiedStack; + String uuid = getOwnerUUID(itemStack); + if (uuid != null) + NetworkHelper.getSoulNetwork(this.getOwnerUUID(itemStack)).syphon(25); + + ItemStack returnStack = new ItemStack(this); + returnStack.setTagCompound(itemStack.getTagCompound()); + return returnStack; } @Override @@ -35,9 +38,6 @@ public class ItemLavaCrystal extends ItemBindableBase implements IVariantProvide @Override public int getItemBurnTime(ItemStack stack) { - if (!stack.hasTagCompound()) - return -1; - if (getOwnerUUID(stack) == null) return -1; @@ -52,6 +52,16 @@ public class ItemLavaCrystal extends ItemBindableBase implements IVariantProvide return -1; } + @Override + public String getOwnerName(ItemStack stack) { + return stack.hasTagCompound() ? stack.getTagCompound().getString(Constants.NBT.OWNER_NAME) : null; + } + + @Override + public String getOwnerUUID(ItemStack stack) { + return stack.hasTagCompound() ? stack.getTagCompound().getString(Constants.NBT.OWNER_UUID) : null; + } + @Override public List> getVariants() { List> ret = Lists.newArrayList();