diff options
author | Blood-Asp <bloodasphendrik@gmail.com> | 2017-03-23 13:00:58 +0100 |
---|---|---|
committer | Blood-Asp <bloodasphendrik@gmail.com> | 2017-03-23 13:59:16 +0100 |
commit | 5f56c40a7590bf84f9cc121df71ef70a1b07d0e5 (patch) | |
tree | d54fc3252a753723fa62074d02b9deb5a615c278 /src/main/java/gregtech/api/gui | |
parent | 7c67f95c9301117e60bd75f053b22e7bb8a4fad3 (diff) | |
download | GT5-Unofficial-5f56c40a7590bf84f9cc121df71ef70a1b07d0e5.tar.gz GT5-Unofficial-5f56c40a7590bf84f9cc121df71ef70a1b07d0e5.tar.bz2 GT5-Unofficial-5f56c40a7590bf84f9cc121df71ef70a1b07d0e5.zip |
Prevent empty batterys from stacking in battery buffer
Diffstat (limited to 'src/main/java/gregtech/api/gui')
-rw-r--r-- | src/main/java/gregtech/api/gui/GT_Container.java | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/src/main/java/gregtech/api/gui/GT_Container.java b/src/main/java/gregtech/api/gui/GT_Container.java index 8eb908ecae..ff0f1cbb9f 100644 --- a/src/main/java/gregtech/api/gui/GT_Container.java +++ b/src/main/java/gregtech/api/gui/GT_Container.java @@ -312,10 +312,9 @@ public class GT_Container extends Container { while (aStack.stackSize > 0 && (!par4 && var6 < aSlotCount || par4 && var6 >= aStartIndex)) { var7 = (Slot) this.inventorySlots.get(var6); var8 = var7.getStack(); - if (!(var7 instanceof GT_Slot_Holo) && !(var7 instanceof GT_Slot_Output) && var8 != null && var8.getItem() == aStack.getItem() && (!aStack.getHasSubtypes() || aStack.getItemDamage() == var8.getItemDamage()) && ItemStack.areItemStackTagsEqual(aStack, var8)) { int var9 = var8.stackSize + aStack.stackSize; - + if(var8.stackSize<mTileEntity.getInventoryStackLimit()){ if (var9 <= aStack.getMaxStackSize()) { aStack.stackSize = 0; var8.stackSize = var9; @@ -326,7 +325,7 @@ public class GT_Container extends Container { var8.stackSize = aStack.getMaxStackSize(); var7.onSlotChanged(); var5 = true; - } + }} } if (par4) { @@ -336,7 +335,6 @@ public class GT_Container extends Container { } } } - if (aStack.stackSize > 0) { if (par4) { var6 = aSlotCount - 1; @@ -349,9 +347,10 @@ public class GT_Container extends Container { var8 = var7.getStack(); if (var8 == null) { - var7.putStack(GT_Utility.copy(aStack)); + int var10 = Math.min(aStack.stackSize, mTileEntity.getInventoryStackLimit()); + var7.putStack(GT_Utility.copyAmount(var10, aStack)); var7.onSlotChanged(); - aStack.stackSize = 0; + aStack.stackSize -= var10; var5 = true; break; } |