From 94a6311f63d9ac34d353449cc7fe8e72269a5a8d Mon Sep 17 00:00:00 2001 From: miozune Date: Tue, 19 Dec 2023 10:44:39 +0900 Subject: Fix logic with old OC calculation code (#2408) --- .../implementations/GT_MetaTileEntity_MultiBlockBase.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src/main/java/gregtech/api/metatileentity/implementations') diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java index d23042bb61..645654c609 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java @@ -1130,13 +1130,14 @@ public abstract class GT_MetaTileEntity_MultiBlockBase extends MetaTileEntity * @param aEUt - recipe EUt * @param aDuration - recipe Duration * @param mAmperage - should be 1 ? - * @param maxInputVoltage - Multiblock Max input voltage + * @param maxInputVoltage - Multiblock Max input voltage. Voltage is rounded up to higher tier voltage. * @param perfectOC - If the Multiblock OCs perfectly, i.e. the large Chemical Reactor */ protected void calculateOverclockedNessMultiInternal(long aEUt, int aDuration, int mAmperage, long maxInputVoltage, boolean perfectOC) { + byte tier = (byte) Math.max(0, GT_Utility.getTier(maxInputVoltage)); GT_OverclockCalculator calculator = new GT_OverclockCalculator().setRecipeEUt(aEUt) - .setEUt(maxInputVoltage * mAmperage) + .setEUt(V[tier] * mAmperage) .setDuration(aDuration) .setDurationDecreasePerOC(perfectOC ? 2 : 1) .calculate(); -- cgit