aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/GT_MetaTileEntity_Hatch_OutputBus_ME.java15
1 files changed, 13 insertions, 2 deletions
diff --git a/src/main/java/gregtech/common/tileentities/machines/GT_MetaTileEntity_Hatch_OutputBus_ME.java b/src/main/java/gregtech/common/tileentities/machines/GT_MetaTileEntity_Hatch_OutputBus_ME.java
index 1ad96087bc..ee378d65c2 100644
--- a/src/main/java/gregtech/common/tileentities/machines/GT_MetaTileEntity_Hatch_OutputBus_ME.java
+++ b/src/main/java/gregtech/common/tileentities/machines/GT_MetaTileEntity_Hatch_OutputBus_ME.java
@@ -185,7 +185,10 @@ public class GT_MetaTileEntity_Hatch_OutputBus_ME extends GT_MetaTileEntity_Hatc
if (s.getStackSize() == 0)
continue;
NBTTagCompound tag = new NBTTagCompound();
- s.getItemStack().writeToNBT(tag);
+ NBTTagCompound tagItemStack = new NBTTagCompound();
+ s.getItemStack().writeToNBT(tagItemStack);
+ tag.setTag("itemStack", tagItemStack);
+ tag.setLong("size", s.getStackSize());
items.appendTag(tag);
}
aNBT.setTag("cachedItems", items);
@@ -204,7 +207,15 @@ public class GT_MetaTileEntity_Hatch_OutputBus_ME extends GT_MetaTileEntity_Hatc
if (t instanceof NBTTagList) {
NBTTagList l = (NBTTagList)t;
for (int i = 0; i < l.tagCount(); ++i) {
- itemCache.add(AEApi.instance().storage().createItemStack(GT_Utility.loadItem(l.getCompoundTagAt(i))));
+ NBTTagCompound tag = l.getCompoundTagAt(i);
+ if (!tag.hasKey("itemStack")) { // legacy #868
+ itemCache.add(AEApi.instance().storage().createItemStack(GT_Utility.loadItem(l.getCompoundTagAt(i))));
+ continue;
+ }
+ NBTTagCompound tagItemStack = tag.getCompoundTag("itemStack");
+ final IAEItemStack s = AEApi.instance().storage().createItemStack(GT_Utility.loadItem(tagItemStack));
+ s.setStackSize(tag.getLong("size"));
+ itemCache.add(s);
}
}
}