From 00f9ea7095fe3c744fd0998ea45171296defb01f Mon Sep 17 00:00:00 2001 From: iouter <3155186831@qq.com> Date: Tue, 7 Dec 2021 20:20:13 +0800 Subject: fix Volcanus can lossless overclock forever. fix as long as Volcanus is possible to lossless overclock, it will lossless overclock forever and https://github.com/GTNewHorizons/GT-New-Horizons-Modpack/issues/7390. --- .../processing/advanced/GregtechMetaTileEntity_Adv_EBF.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'src/Java') diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/GregtechMetaTileEntity_Adv_EBF.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/GregtechMetaTileEntity_Adv_EBF.java index 5715db32ac..098642978d 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/GregtechMetaTileEntity_Adv_EBF.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/GregtechMetaTileEntity_Adv_EBF.java @@ -332,7 +332,7 @@ public class GregtechMetaTileEntity_Adv_EBF extends GregtechMeta_MultiBlockBase aSpeedBonusPercent = Math.max(-99, aSpeedBonusPercent); float tTimeFactor = 100.0f / (100.0f + aSpeedBonusPercent); this.mMaxProgresstime = (int) (tRecipe.mDuration * tTimeFactor); - int rInt = 2; + int tHalfHeatCapacityDivTiers = tHeatCapacityDivTiers / 2; this.mEUt = (int) Math.ceil(tTotalEUt); @@ -346,7 +346,15 @@ public class GregtechMetaTileEntity_Adv_EBF extends GregtechMeta_MultiBlockBase } else { while (this.mEUt <= gregtech.api.enums.GT_Values.V[(tTier - 1)]) { this.mEUt *= 4; - this.mMaxProgresstime /= (tHeatCapacityDivTiers >= rInt ? 4 : 2); + if (tHalfHeatCapacityDivTiers > 0) { + this.mMaxProgresstime = mMaxProgresstime / 4; + tHalfHeatCapacityDivTiers--; + } else { + this.mMaxProgresstime = mMaxProgresstime / 2; + } + if (this.mMaxProgresstime <= 1) { + break; + } } } if (this.mEUt > 0) { -- cgit