diff options
author | Johannes Gäßler <updrn@student.kit.edu> | 2017-08-03 21:55:50 +0200 |
---|---|---|
committer | Johannes Gäßler <updrn@student.kit.edu> | 2017-08-03 21:55:50 +0200 |
commit | 76b3b18ff2836f38482f46f599a783a89307c1b8 (patch) | |
tree | 395eb75479a7a8121a7332f52d1a856cbbd48ac6 /src/main/java/gregtech | |
parent | 71a89ccf2ef90c2a5193bb45d0154fd0fadae6f5 (diff) | |
download | GT5-Unofficial-76b3b18ff2836f38482f46f599a783a89307c1b8.tar.gz GT5-Unofficial-76b3b18ff2836f38482f46f599a783a89307c1b8.tar.bz2 GT5-Unofficial-76b3b18ff2836f38482f46f599a783a89307c1b8.zip |
Made it so that Multiblocks will look for empty Output Hatches
Diffstat (limited to 'src/main/java/gregtech')
-rw-r--r-- | src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java | 30 |
1 files changed, 15 insertions, 15 deletions
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java index 784b94b2ae..be85a99f38 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java @@ -263,15 +263,8 @@ public abstract class GT_MetaTileEntity_MultiBlockBase extends MetaTileEntity { } addOutput(tStack); } - if(mOutputFluids!=null) { - if (mOutputFluids.length == 1) { - for (FluidStack tStack : mOutputFluids) - if (tStack != null) { - addOutput(tStack); - } - } else if (mOutputFluids.length > 1) { - addFluidOutputs(mOutputFluids); - } + if (mOutputFluids != null) { + addFluidOutputs(mOutputFluids); } mEfficiency = Math.max(0, Math.min(mEfficiency + mEfficiencyIncrease, getMaxEfficiency(mInventory[1]) - ((getIdealStatus() - getRepairStatus()) * 1000))); mOutputItems = null; @@ -606,13 +599,20 @@ public abstract class GT_MetaTileEntity_MultiBlockBase extends MetaTileEntity { } protected void addFluidOutputs(FluidStack[] mOutputFluids) { - int min=mOutputFluids.length>mOutputHatches.size()?mOutputHatches.size():mOutputFluids.length; - for (int i = 0; i < min; ++i) { - if (this.mOutputHatches.get(i) != null && mOutputFluids[i] != null && isValidMetaTileEntity(this.mOutputHatches.get(i))) { - this.mOutputHatches.get(i).fill(mOutputFluids[i], true); - } + for (FluidStack outputFluidStack : mOutputFluids) { + if (outputFluidStack != null) { + FluidStack copiedStack = outputFluidStack.copy(); + for (GT_MetaTileEntity_Hatch_Output outputhatch : mOutputHatches) { + if (copiedStack.amount <= 0) { + break; + } + if (!isValidMetaTileEntity(outputhatch)) { + continue; + } + copiedStack.amount -= outputhatch.fill(copiedStack, true); + } + } } - } public boolean depleteInput(FluidStack aLiquid) { |