diff options
author | Alkalus <draknyte1@hotmail.com> | 2017-09-25 17:42:33 +1000 |
---|---|---|
committer | Alkalus <draknyte1@hotmail.com> | 2017-09-25 17:42:33 +1000 |
commit | 35de0bbb41bd872800e62f34e02f4d859405d750 (patch) | |
tree | 096b4b1ea548ced695cdcf98205264e04274a4e0 /src/Java/gtPlusPlus/core/item | |
parent | edb22e47dc6a0891175ad121ca6793cf0f3d19a0 (diff) | |
download | GT5-Unofficial-35de0bbb41bd872800e62f34e02f4d859405d750.tar.gz GT5-Unofficial-35de0bbb41bd872800e62f34e02f4d859405d750.tar.bz2 GT5-Unofficial-35de0bbb41bd872800e62f34e02f4d859405d750.zip |
% More Sulfuric Potion changes.
% Changes to NBT Item Blocks.
Diffstat (limited to 'src/Java/gtPlusPlus/core/item')
-rw-r--r-- | src/Java/gtPlusPlus/core/item/base/itemblock/ItemBlockNBT.java | 43 |
1 files changed, 35 insertions, 8 deletions
diff --git a/src/Java/gtPlusPlus/core/item/base/itemblock/ItemBlockNBT.java b/src/Java/gtPlusPlus/core/item/base/itemblock/ItemBlockNBT.java index c2bb478f85..5b55bbd84f 100644 --- a/src/Java/gtPlusPlus/core/item/base/itemblock/ItemBlockNBT.java +++ b/src/Java/gtPlusPlus/core/item/base/itemblock/ItemBlockNBT.java @@ -1,12 +1,14 @@ package gtPlusPlus.core.item.base.itemblock; -import gtPlusPlus.core.util.nbt.NBTUtils; +import gregtech.api.util.GT_Utility; import gtPlusPlus.core.util.player.PlayerUtils; import net.minecraft.block.Block; -import net.minecraft.creativetab.CreativeTabs; +import net.minecraft.entity.Entity; import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.item.ItemBlock; import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; import net.minecraft.world.World; public class ItemBlockNBT extends ItemBlock { @@ -17,14 +19,39 @@ public class ItemBlockNBT extends ItemBlock { @Override public void onCreated(ItemStack item, World world, EntityPlayer player) { - if (player != null){ - NBTUtils.setString(item, "mOwner", player.getDisplayName()); - NBTUtils.setString(item, "mUUID", ""+player.getUniqueID()); - boolean mOP = PlayerUtils.isPlayerOP(player); - NBTUtils.setBoolean(item, "mOP", mOP); - } + addNBT(player, item); super.onCreated(item, world, player); } + @Override + public void onUpdate(ItemStack item, World world, Entity entity, int p_77663_4_, boolean p_77663_5_) { + if (entity instanceof EntityPlayerMP) { + EntityPlayerMP mPlayer = (EntityPlayerMP) entity; + + NBTTagCompound rNBT = item.getTagCompound(); + rNBT = ((rNBT == null) ? new NBTTagCompound() : rNBT); + if (!rNBT.hasKey("mOwner")){ + addNBT(mPlayer, item); + } + } + super.onUpdate(item, world, entity, p_77663_4_, p_77663_5_); + } + + private void addNBT(EntityPlayer player, ItemStack item) { + NBTTagCompound rNBT = item.getTagCompound(); + rNBT = ((rNBT == null) ? new NBTTagCompound() : rNBT); + if (player != null) { + boolean mOP = PlayerUtils.isPlayerOP(player); + rNBT.setString("mOwner", player.getDisplayName()); + rNBT.setString("mUUID", ""+player.getUniqueID()); + rNBT.setBoolean("mOP", mOP); + } + else if (player == null) { + rNBT.setString("mOwner", "fakeplayer"); + rNBT.setString("mUUID", "00000000"); + rNBT.setBoolean("mOP", false); + } + GT_Utility.ItemNBT.setNBT(item, rNBT); + } }
\ No newline at end of file |