aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorBlueWeabo <ilia.iliev2005@gmail.com>2023-05-05 20:52:57 +0300
committerGitHub <noreply@github.com>2023-05-05 19:52:57 +0200
commitcfcf8bf40dfb941834e8bc771d16e2d187e9c122 (patch)
treea279e7c01792e16fb8544c4a27f8c95273ae3c8e /src
parent441b15a1a6b6e99adadc7567e66cd4a7e60ab4d0 (diff)
downloadGT5-Unofficial-cfcf8bf40dfb941834e8bc771d16e2d187e9c122.tar.gz
GT5-Unofficial-cfcf8bf40dfb941834e8bc771d16e2d187e9c122.tar.bz2
GT5-Unofficial-cfcf8bf40dfb941834e8bc771d16e2d187e9c122.zip
fix (#1951)
Diffstat (limited to 'src')
-rw-r--r--src/main/java/gregtech/api/util/GT_OverclockCalculator.java3
-rw-r--r--src/test/java/gregtech/overclock/GT_OverclockCalculator_UnitTest.java10
2 files changed, 13 insertions, 0 deletions
diff --git a/src/main/java/gregtech/api/util/GT_OverclockCalculator.java b/src/main/java/gregtech/api/util/GT_OverclockCalculator.java
index f07a60f822..ab32772c78 100644
--- a/src/main/java/gregtech/api/util/GT_OverclockCalculator.java
+++ b/src/main/java/gregtech/api/util/GT_OverclockCalculator.java
@@ -233,6 +233,9 @@ public class GT_OverclockCalculator {
.ceil(mRecipeEUt * mParallel * mRecipeAmps * mEUtDiscount * heatDiscountMultiplier))
<< mEUtIncreasePerOC;
while (tTierDifference > 0 && tNextConsumption < mEUt * mAmps) {
+ if (mDuration <= 1) {
+ break;
+ }
mRecipeEUt <<= mEUtIncreasePerOC;
mDuration >>= mDurationDecreasePerOC;
tNextConsumption <<= mEUtIncreasePerOC;
diff --git a/src/test/java/gregtech/overclock/GT_OverclockCalculator_UnitTest.java b/src/test/java/gregtech/overclock/GT_OverclockCalculator_UnitTest.java
index 38d05d32f2..5f2c4632ce 100644
--- a/src/test/java/gregtech/overclock/GT_OverclockCalculator_UnitTest.java
+++ b/src/test/java/gregtech/overclock/GT_OverclockCalculator_UnitTest.java
@@ -333,4 +333,14 @@ class GT_OverclockCalculator_UnitTest {
assertEquals(1024 >> 3, calculator.getDuration(), messageDuration);
assertEquals(correctConsumption, calculator.getConsumption(), messageEUt);
}
+
+ @Test
+ void ulvRecipeStopsWhenOneTicked_Test() {
+ GT_OverclockCalculator calculator = new GT_OverclockCalculator().setRecipeEUt(VP[0])
+ .setEUt(V[6])
+ .setDuration(1)
+ .calculate();
+ assertEquals(1, calculator.getDuration(), messageDuration);
+ assertEquals(VP[0], calculator.getConsumption(), messageEUt);
+ }
}