diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/purification/MTEPurificationUnitBase.java b/src/main/java/gregtech/common/tileentities/machines/multi/purification/MTEPurificationUnitBase.java index 263590f1849..ffb929074a9 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/purification/MTEPurificationUnitBase.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/purification/MTEPurificationUnitBase.java @@ -318,7 +318,7 @@ public float calculateFinalSuccessChance() { public FluidStack getWaterBoostAmount(GTRecipe recipe) { // Recipes should always be constructed so that output water is always the first fluid output FluidStack outputWater = recipe.mFluidOutputs[0]; - int amount = Math.round(outputWater.amount * WATER_BOOST_NEEDED_FLUID); + int amount = Math.round(outputWater.amount * WATER_BOOST_NEEDED_FLUID * this.effectiveParallel); return new FluidStack(outputWater.getFluid(), amount); } @@ -337,11 +337,15 @@ public boolean isWaterBoosted(GTRecipe recipe) { /** * Consumes all fluid inputs of the current recipe. + * Should only scale the first fluid input with water */ public void depleteRecipeInputs() { - for (FluidStack input : this.currentRecipe.mFluidInputs) { + for (int i = 0; i < this.currentRecipe.mFluidInputs.length; ++i) { + FluidStack input = this.currentRecipe.mFluidInputs[i]; FluidStack copyWithParallel = input.copy(); - copyWithParallel.amount = input.amount * effectiveParallel; + if (i == 0) { + copyWithParallel.amount = input.amount * effectiveParallel; + } this.depleteInput(copyWithParallel); } } diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/purification/MTEPurificationUnitOzonation.java b/src/main/java/gregtech/common/tileentities/machines/multi/purification/MTEPurificationUnitOzonation.java index f1d3b56fe8f..bf221d69730 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/purification/MTEPurificationUnitOzonation.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/purification/MTEPurificationUnitOzonation.java @@ -261,8 +261,7 @@ public CheckRecipeResult checkProcessing() { for (FluidStack fluid : this.storedFluids) { if (fluid.isFluidEqual(Materials.Ozone.getGas(1L))) { if (fluid.amount > MAX_OZONE_GAS_FOR_EXPLOSION) { - // TODO: Fix crash in hatch - // this.explodeMultiblock(); + this.explodeMultiblock(); } } }