aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech
diff options
context:
space:
mode:
authorJohannes Gäßler <updrn@student.kit.edu>2017-08-03 21:55:50 +0200
committerJohannes Gäßler <updrn@student.kit.edu>2017-08-03 21:55:50 +0200
commit76b3b18ff2836f38482f46f599a783a89307c1b8 (patch)
tree395eb75479a7a8121a7332f52d1a856cbbd48ac6 /src/main/java/gregtech
parent71a89ccf2ef90c2a5193bb45d0154fd0fadae6f5 (diff)
downloadGT5-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.java30
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) {