diff options
| author | HoleFish <1594248739@qq.com> | 2024-01-23 15:10:48 +0800 |
|---|---|---|
| committer | HoleFish <1594248739@qq.com> | 2024-01-23 15:10:48 +0800 |
| commit | d0a886377b8c5482972383dfb7c8748576ec84f3 (patch) | |
| tree | eaad7785a442c1b342722af3356215a17c3ffa1a /src | |
| parent | ad53eda5d8d64887987b2e3d16633f19cff32229 (diff) | |
| download | GT5-Unofficial-d0a886377b8c5482972383dfb7c8748576ec84f3.tar.gz GT5-Unofficial-d0a886377b8c5482972383dfb7c8748576ec84f3.tar.bz2 GT5-Unofficial-d0a886377b8c5482972383dfb7c8748576ec84f3.zip | |
Calculate multiplier in a new way
Former-commit-id: 948c644cbf0f89d70b07dbca8444b26f0e839f94
Diffstat (limited to 'src')
| -rw-r--r-- | src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/GT_TileEntity_BioVat.java | 27 |
1 files changed, 11 insertions, 16 deletions
diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/GT_TileEntity_BioVat.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/GT_TileEntity_BioVat.java index fd1fb049cc..9778d5b63d 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/GT_TileEntity_BioVat.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/GT_TileEntity_BioVat.java @@ -80,6 +80,7 @@ import gregtech.api.recipe.check.CheckRecipeResult; import gregtech.api.recipe.check.CheckRecipeResultRegistry; import gregtech.api.render.TextureFactory; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; +import gregtech.api.util.GT_ParallelHelper; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; @@ -258,26 +259,20 @@ public class GT_TileEntity_BioVat extends GT_MetaTileEntity_EnhancedMultiBlockBa @NotNull @Override - public CheckRecipeResult process() { - CheckRecipeResult result = super.process(); - if (!result.wasSuccessful()) { - return result; - } - // We already made sure the recipe runs. Now the vat looks for as many "parallels" as it can do - GT_TileEntity_BioVat.this.mExpectedMultiplier = GT_TileEntity_BioVat.this - .getExpectedMultiplier(this.lastRecipe.getFluidOutput(0), true); - GT_TileEntity_BioVat.this.mTimes = 1; - for (int i = 1; i < GT_TileEntity_BioVat.this.mExpectedMultiplier; i++) { - if (GT_TileEntity_BioVat.this.depleteInput(this.lastRecipe.mFluidInputs[0])) { - GT_TileEntity_BioVat.this.mTimes++; - } - } - this.outputFluids[0].amount *= GT_TileEntity_BioVat.this.mTimes; - return result; + protected GT_ParallelHelper createParallelHelper(@NotNull GT_Recipe recipe) { + return super.createParallelHelper(recipeWithMultiplier(recipe)); } }; } + protected GT_Recipe recipeWithMultiplier(GT_Recipe recipe) { + GT_Recipe tRecipe = recipe.copy(); + int multiplier = getExpectedMultiplier(recipe.getFluidOutput(0), true); + tRecipe.mFluidInputs[0].amount *= multiplier; + tRecipe.mFluidOutputs[0].amount *= multiplier; + return tRecipe; + } + @Override protected void setupProcessingLogic(ProcessingLogic logic) { super.setupProcessingLogic(logic); |
