aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/gregtech')
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_MultiFurnace.java12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_MultiFurnace.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_MultiFurnace.java
index 8a129c5f26..b0de2803b3 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_MultiFurnace.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_MultiFurnace.java
@@ -139,18 +139,20 @@ public class GT_MetaTileEntity_MultiFurnace extends GT_MetaTileEntity_AbstractMu
int mVolatage = GT_Utility.safeInt(getMaxInputVoltage());
int tMaxParrallel = 8 * this.mLevel;
int tCurrenParrallel = 0;
- ArrayList<ItemStack> smeltedOutputs = new ArrayList<ItemStack>();
- ArrayList<Integer> outputStackSizes = new ArrayList<Integer>();
+ ArrayList<ItemStack> smeltedOutputs = new ArrayList<>();
+ ArrayList<Integer> outputStackSizes = new ArrayList<>();
for (ItemStack item : tInputList) {
ItemStack smeltedOutput = GT_ModHandler.getSmeltingOutput(item, false, null);
if (smeltedOutput != null) {
smeltedOutputs.add(smeltedOutput);
- outputStackSizes.add(smeltedOutput.stackSize * item.stackSize);
- if (item.stackSize < (tMaxParrallel - tCurrenParrallel)) {
+ if (item.stackSize <= (tMaxParrallel - tCurrenParrallel)) {
tCurrenParrallel += item.stackSize;
+ outputStackSizes.add(smeltedOutput.stackSize * item.stackSize);
item.stackSize = 0;
} else {
- item.stackSize = (tCurrenParrallel + item.stackSize) - tMaxParrallel;
+ int remainingStackSize = tCurrenParrallel + item.stackSize - tMaxParrallel;
+ outputStackSizes.add(smeltedOutput.stackSize * (item.stackSize - remainingStackSize));
+ item.stackSize = remainingStackSize;
break;
}
}