aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authormiozune <miozune@gmail.com>2022-09-01 14:17:16 +0900
committermiozune <miozune@gmail.com>2022-09-01 14:17:16 +0900
commit6afb4273d66ab0374b9c61c6520fc3dd9c747684 (patch)
tree08e64180f9215dc8b2fbcc0896bca92c9eee7e16 /src
parentbd63dfdbd6fe13bc79b29504524d98be6f21ef03 (diff)
downloadGT5-Unofficial-6afb4273d66ab0374b9c61c6520fc3dd9c747684.tar.gz
GT5-Unofficial-6afb4273d66ab0374b9c61c6520fc3dd9c747684.tar.bz2
GT5-Unofficial-6afb4273d66ab0374b9c61c6520fc3dd9c747684.zip
stop machine if ratio check failed
Diffstat (limited to 'src')
-rw-r--r--src/main/java/com/elisis/gtnhlanth/common/tileentity/DissolutionTank.java23
1 files changed, 15 insertions, 8 deletions
diff --git a/src/main/java/com/elisis/gtnhlanth/common/tileentity/DissolutionTank.java b/src/main/java/com/elisis/gtnhlanth/common/tileentity/DissolutionTank.java
index 323d2336aa..0ec203e30a 100644
--- a/src/main/java/com/elisis/gtnhlanth/common/tileentity/DissolutionTank.java
+++ b/src/main/java/com/elisis/gtnhlanth/common/tileentity/DissolutionTank.java
@@ -28,7 +28,7 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_EnhancedMul
import gregtech.api.render.TextureFactory;
import gregtech.api.util.GT_Multiblock_Tooltip_Builder;
import gregtech.api.util.GT_Recipe;
-import java.util.ArrayList;
+import java.util.List;
import net.minecraft.block.Block;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.item.ItemStack;
@@ -89,7 +89,7 @@ public class DissolutionTank extends GT_MetaTileEntity_EnhancedMultiBlockBase<Di
public boolean checkRecipe(ItemStack itemStack) {
// GT_Log.out.print("in checkRecipe");
- ArrayList<FluidStack> tFluidInputs = this.getStoredFluids();
+ List<FluidStack> tFluidInputs = this.getStoredFluids();
FluidStack[] tFluidInputArray = tFluidInputs.toArray(new FluidStack[0]);
ItemStack[] tItems = this.getStoredInputs().toArray(new ItemStack[0]);
long tVoltage = this.getMaxInputVoltage();
@@ -108,6 +108,18 @@ public class DissolutionTank extends GT_MetaTileEntity_EnhancedMultiBlockBase<Di
if (this.mEUt > 0) this.mEUt = (-this.mEUt);
+ if (!checkRatio(tRecipe, tFluidInputs)) {
+ stopMachine();
+ return false;
+ }
+
+ this.mOutputFluids = new FluidStack[] {tRecipe.getFluidOutput(0)};
+ this.mOutputItems = tRecipe.mOutputs;
+ this.updateSlots();
+ return true;
+ }
+
+ private boolean checkRatio(GT_Recipe tRecipe, List<FluidStack> tFluidInputs) {
FluidStack majorGenericFluid = tRecipe.mFluidInputs[0];
FluidStack minorGenericFluid = tRecipe.mFluidInputs[1];
@@ -150,12 +162,7 @@ public class DissolutionTank extends GT_MetaTileEntity_EnhancedMultiBlockBase<Di
// GT_Log.out.print("minor " + minorInput.getLocalizedName());
// GT_Log.out.print("mjrinputamt " + majorInput.amount);
- if (majorAmount / tRecipe.mSpecialValue != minorAmount) return false;
-
- this.mOutputFluids = new FluidStack[] {tRecipe.getFluidOutput(0)};
- this.mOutputItems = tRecipe.mOutputs;
- this.updateSlots();
- return true;
+ return majorAmount / tRecipe.mSpecialValue == minorAmount;
}
@Override