From a8a1b46c00cd8086dc175e4d828d0c2048eec586 Mon Sep 17 00:00:00 2001 From: MuXiu1997 Date: Sun, 8 May 2022 15:48:02 +0800 Subject: Fix ME OutputBus void items (#1051) * Fix ME OutputBus void items * Make backward compatible --- .../machines/GT_MetaTileEntity_Hatch_OutputBus_ME.java | 15 +++++++++++++-- 1 file 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); } } } -- cgit