aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/main/java/gregtech/api/util/GT_OverclockCalculator.java17
1 files changed, 12 insertions, 5 deletions
diff --git a/src/main/java/gregtech/api/util/GT_OverclockCalculator.java b/src/main/java/gregtech/api/util/GT_OverclockCalculator.java
index 8003e21054..71b6c8e37f 100644
--- a/src/main/java/gregtech/api/util/GT_OverclockCalculator.java
+++ b/src/main/java/gregtech/api/util/GT_OverclockCalculator.java
@@ -220,12 +220,19 @@ public class GT_OverclockCalculator {
}
}
- while ((mRecipeEUt * mParallel * mRecipeAmps) << mEUtIncrasePerOC < mEUt * mAmps) {
- if (mDuration <= 1) {
- break;
+ int tRecipeTier = GT_Utility.getTier(mRecipeEUt);
+ if (tRecipeTier == 0) {
+ int tTier = GT_Utility.getTier(mEUt);
+ mRecipeEUt = (mRecipeEUt * (1L << tTier - 1) * (1L << tTier - 1));
+ mDuration = (mDuration / (1 << tTier - 1));
+ } else {
+ while ((mRecipeEUt * mParallel * mRecipeAmps) << mEUtIncrasePerOC < mEUt * mAmps) {
+ if (mDuration <= 1) {
+ break;
+ }
+ mRecipeEUt <<= mEUtIncrasePerOC;
+ mDuration >>= mDurationDecreasePerOC;
}
- mRecipeEUt <<= mEUtIncrasePerOC;
- mDuration >>= mDurationDecreasePerOC;
}
if (mDuration < 1) {