diff options
author | Martin Robertz <dream-master@gmx.net> | 2021-02-08 19:32:43 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-02-08 19:32:43 +0100 |
commit | 660e838d092020b56e341b7c505ef5a084646379 (patch) | |
tree | aa34a0cc99a00c704489f82cc6cc6593e034b027 /src/main/java/gregtech/api/gui | |
parent | 8d2b13f7e466165b5aeaed2198a8573ef67131c3 (diff) | |
parent | eede79b1f210eec76f3b223353ab06a3398919ef (diff) | |
download | GT5-Unofficial-660e838d092020b56e341b7c505ef5a084646379.tar.gz GT5-Unofficial-660e838d092020b56e341b7c505ef5a084646379.tar.bz2 GT5-Unofficial-660e838d092020b56e341b7c505ef5a084646379.zip |
Merge pull request #430 from GTNewHorizons/gui-manipulate-fluid
Fix size 0 fluid stack
Diffstat (limited to 'src/main/java/gregtech/api/gui')
-rw-r--r-- | src/main/java/gregtech/api/gui/GT_Container_BasicMachine.java | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/main/java/gregtech/api/gui/GT_Container_BasicMachine.java b/src/main/java/gregtech/api/gui/GT_Container_BasicMachine.java index 7e4e105353..da528d67fc 100644 --- a/src/main/java/gregtech/api/gui/GT_Container_BasicMachine.java +++ b/src/main/java/gregtech/api/gui/GT_Container_BasicMachine.java @@ -188,6 +188,7 @@ public class GT_Container_BasicMachine extends GT_Container_BasicTank { public ItemStack slotClick(int aSlotIndex, int aMouseclick, int aShifthold, EntityPlayer aPlayer) { GT_MetaTileEntity_BasicMachine machine = (GT_MetaTileEntity_BasicMachine) mTileEntity.getMetaTileEntity(); if (machine == null) return null; + ItemStack tResultStack; switch (aSlotIndex) { case 0: machine.mFluidTransfer = !machine.mFluidTransfer; @@ -197,7 +198,10 @@ public class GT_Container_BasicMachine extends GT_Container_BasicTank { machine.mItemTransfer = !machine.mItemTransfer; return null; case 2: - return pickupFluid(machine.getDrainableStack(), aPlayer); + tResultStack = pickupFluid(machine.getDrainableStack(), aPlayer); + if (machine.getDrainableStack().amount == 0) + machine.setDrainableStack(null); + return tResultStack; default: if (aSlotIndex == OTHER_SLOT_COUNT + 1 + machine.mInputSlotCount + machine.mOutputItems.length) { // input fluid slot @@ -216,7 +220,10 @@ public class GT_Container_BasicMachine extends GT_Container_BasicTank { // both nonnull. actually both pickup and fill is reasonable, but I'll go with fill here return fillFluid(machine, aPlayer, tFluidHeld); } else { - return pickupFluid(tInputFluid, aPlayer); + tResultStack = pickupFluid(tInputFluid, aPlayer); + if (tInputFluid.amount == 0) + machine.setFillableStack(null); + return tResultStack; } } } else { |