diff options
author | miozune <miozune@gmail.com> | 2022-09-01 14:17:16 +0900 |
---|---|---|
committer | miozune <miozune@gmail.com> | 2022-09-01 14:17:16 +0900 |
commit | 6afb4273d66ab0374b9c61c6520fc3dd9c747684 (patch) | |
tree | 08e64180f9215dc8b2fbcc0896bca92c9eee7e16 /src | |
parent | bd63dfdbd6fe13bc79b29504524d98be6f21ef03 (diff) | |
download | GT5-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.java | 23 |
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 |