diff options
Diffstat (limited to 'src/main/java/gregtech/crossmod')
-rw-r--r-- | src/main/java/gregtech/crossmod/holoinventory/GT_InventoryDecoder.java | 38 | ||||
-rw-r--r-- | src/main/java/gregtech/crossmod/holoinventory/HoloInventory.java | 10 | ||||
-rw-r--r-- | src/main/java/gregtech/crossmod/waila/GregtechWailaDataProvider.java (renamed from src/main/java/gregtech/crossmod/GregtechWailaDataProvider.java) | 2 | ||||
-rw-r--r-- | src/main/java/gregtech/crossmod/waila/Waila.java (renamed from src/main/java/gregtech/crossmod/Waila.java) | 2 |
4 files changed, 50 insertions, 2 deletions
diff --git a/src/main/java/gregtech/crossmod/holoinventory/GT_InventoryDecoder.java b/src/main/java/gregtech/crossmod/holoinventory/GT_InventoryDecoder.java new file mode 100644 index 0000000000..0cc8d1bf44 --- /dev/null +++ b/src/main/java/gregtech/crossmod/holoinventory/GT_InventoryDecoder.java @@ -0,0 +1,38 @@ +package gregtech.crossmod.holoinventory; + +import static net.dries007.holoInventory.util.NBTKeys.*; + +import java.util.List; + +import net.dries007.holoInventory.compat.InventoryDecoder; +import net.dries007.holoInventory.compat.InventoryDecoderRegistry; +import net.minecraft.inventory.IInventory; +import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.nbt.NBTTagList; + +import gregtech.api.metatileentity.BaseTileEntity; + +public class GT_InventoryDecoder extends InventoryDecoder { + + public GT_InventoryDecoder() { + super(BaseTileEntity.class); + } + + @Override + public NBTTagList toNBT(IInventory inv) { + List<ItemStack> items = ((BaseTileEntity) inv).getItemsForHoloGlasses(); + if (items == null) { + return InventoryDecoderRegistry.DEFAULT.toNBT(inv); + } + NBTTagList tagList = new NBTTagList(); + for (ItemStack stack : items) { + if (stack != null) { + NBTTagCompound tag = stack.writeToNBT(new NBTTagCompound()); + tag.setInteger(NBT_KEY_COUNT, stack.stackSize); + tagList.appendTag(tag); + } + } + return tagList; + } +} diff --git a/src/main/java/gregtech/crossmod/holoinventory/HoloInventory.java b/src/main/java/gregtech/crossmod/holoinventory/HoloInventory.java new file mode 100644 index 0000000000..d7dcdcf4b5 --- /dev/null +++ b/src/main/java/gregtech/crossmod/holoinventory/HoloInventory.java @@ -0,0 +1,10 @@ +package gregtech.crossmod.holoinventory; + +import net.dries007.holoInventory.compat.InventoryDecoderRegistry; + +public class HoloInventory { + + public static void init() { + InventoryDecoderRegistry.register(new GT_InventoryDecoder()); + } +} diff --git a/src/main/java/gregtech/crossmod/GregtechWailaDataProvider.java b/src/main/java/gregtech/crossmod/waila/GregtechWailaDataProvider.java index 7090af64cd..7012bc68fe 100644 --- a/src/main/java/gregtech/crossmod/GregtechWailaDataProvider.java +++ b/src/main/java/gregtech/crossmod/waila/GregtechWailaDataProvider.java @@ -1,4 +1,4 @@ -package gregtech.crossmod; +package gregtech.crossmod.waila; import java.util.List; diff --git a/src/main/java/gregtech/crossmod/Waila.java b/src/main/java/gregtech/crossmod/waila/Waila.java index c66eb6a5de..50b2b5cb57 100644 --- a/src/main/java/gregtech/crossmod/Waila.java +++ b/src/main/java/gregtech/crossmod/waila/Waila.java @@ -1,4 +1,4 @@ -package gregtech.crossmod; +package gregtech.crossmod.waila; import cpw.mods.fml.common.event.FMLInterModComms; import gregtech.api.enums.Mods; |