aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorHoleFish <48403212+HoleFish@users.noreply.github.com>2024-02-03 23:56:53 +0800
committerGitHub <noreply@github.com>2024-02-03 16:56:53 +0100
commit8d089857fc49ad46bc84cb84e0306581e71337ae (patch)
treeeee9b20ba8dfa1556de226109026554ca85f5a0f /src
parent1adb98ace59a99226e5f8310de45e302100ee9b9 (diff)
downloadGT5-Unofficial-8d089857fc49ad46bc84cb84e0306581e71337ae.tar.gz
GT5-Unofficial-8d089857fc49ad46bc84cb84e0306581e71337ae.tar.bz2
GT5-Unofficial-8d089857fc49ad46bc84cb84e0306581e71337ae.zip
Calculate multiplier in a new way (#387)
Former-commit-id: af4c73cf6d2b35b97b6d9fe106ec16b6fa0083fd
Diffstat (limited to 'src')
-rw-r--r--src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/GT_TileEntity_BioVat.java27
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);