diff options
Diffstat (limited to 'main/java/gregtech/api/metatileentity')
-rw-r--r-- | main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java b/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java index 1ff909d3e1..f4c56427fa 100644 --- a/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java +++ b/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java @@ -385,11 +385,14 @@ public abstract class GT_MetaTileEntity_MultiBlockBase extends MetaTileEntity { public boolean addOutput(FluidStack aLiquid) { if (aLiquid == null) return false; + FluidStack tLiquid = aLiquid.copy(); for (GT_MetaTileEntity_Hatch_Output tHatch : mOutputHatches) { if (isValidMetaTileEntity(tHatch) && GT_ModHandler.isSteam(aLiquid)?tHatch.outputsSteam():tHatch.outputsLiquids()) { - int tAmount = tHatch.fill(aLiquid, false); - if (tAmount >= aLiquid.amount) { - return tHatch.fill(aLiquid, true) >= aLiquid.amount; + int tAmount = tHatch.fill(tLiquid, false); + if (tAmount >= tLiquid.amount) { + return tHatch.fill(tLiquid, true) >= tLiquid.amount; + }else if(tAmount>0){ + tLiquid.amount = tLiquid.amount - tHatch.fill(tLiquid, true); } } } |