aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJakub <53441451+kuba6000@users.noreply.github.com>2022-03-12 21:45:17 +0100
committerGitHub <noreply@github.com>2022-03-12 21:45:17 +0100
commitc669b6951c430fbefa6896b8305740fb6f89876c (patch)
treef8b8cdb299b1090d238d9d5488f50d87dcc87c79 /src
parent3a35d97cc7b21bc972071b166217dd82c37761f2 (diff)
downloadGT5-Unofficial-c669b6951c430fbefa6896b8305740fb6f89876c.tar.gz
GT5-Unofficial-c669b6951c430fbefa6896b8305740fb6f89876c.tar.bz2
GT5-Unofficial-c669b6951c430fbefa6896b8305740fb6f89876c.zip
Fix wrong overclock (#106)
Former-commit-id: 9e8828174d999951ae8ad6eff5d78562eadc00fa
Diffstat (limited to 'src')
-rw-r--r--src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaChemicalReactor.java6
-rw-r--r--src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaOilCracker.java6
-rw-r--r--src/main/java/com/github/bartimaeusnek/bartworks/util/BW_Util.java22
3 files changed, 19 insertions, 15 deletions
diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaChemicalReactor.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaChemicalReactor.java
index d7878a7973..948bb04148 100644
--- a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaChemicalReactor.java
+++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaChemicalReactor.java
@@ -94,7 +94,7 @@ public class GT_TileEntity_MegaChemicalReactor extends GT_MetaTileEntity_LargeCh
.addInputBus("Hint block ",1)
.addOutputBus("Hint block ",1)
.addOutputHatch("Hint block ",1)
- .toolTipFinisher(BW_Tooltip_Reference.ADDED_BY_BARTIMAEUSNEK_VIA_BARTWORKS.get());
+ .toolTipFinisher("Bartworks");
return tt;
}
@@ -165,9 +165,9 @@ public class GT_TileEntity_MegaChemicalReactor extends GT_MetaTileEntity_LargeCh
actualEUT = actualEUT / 2;
divider++;
}
- calculatePerfectOverclockedNessMulti((int) actualEUT, tRecipe.mDuration * (divider * 2), 1, nominalV);
+ BW_Util.calculatePerfectOverclockedNessMulti((int) actualEUT, tRecipe.mDuration * (divider * 2), 1, nominalV, this);
} else {
- calculatePerfectOverclockedNessMulti((int) actualEUT, tRecipe.mDuration, 1, nominalV);
+ BW_Util.calculatePerfectOverclockedNessMulti((int) actualEUT, tRecipe.mDuration, 1, nominalV, this);
}
//In case recipe is too OP for that machine
if (this.mMaxProgresstime == Integer.MAX_VALUE - 1 && this.mEUt == Integer.MAX_VALUE - 1) {
diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaOilCracker.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaOilCracker.java
index ffe6d46ade..4a7ac80aa8 100644
--- a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaOilCracker.java
+++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaOilCracker.java
@@ -97,7 +97,7 @@ public class GT_TileEntity_MegaOilCracker extends GT_MetaTileEntity_OilCracker i
.addInputHatch("Hint block",2,3)
.addOutputHatch("Hint block",2,3)
.addInputHatch("Steam/Hydrogen ONLY, Hint block",4)
- .toolTipFinisher(BW_Tooltip_Reference.ADDED_BY_BARTIMAEUSNEK_VIA_BARTWORKS.get());
+ .toolTipFinisher("Bartworks");
return tt;
}
@@ -180,9 +180,9 @@ public class GT_TileEntity_MegaOilCracker extends GT_MetaTileEntity_OilCracker i
actualEUT = actualEUT / 2;
divider++;
}
- calculatePerfectOverclockedNessMulti((int) actualEUT, tRecipe.mDuration * (divider * 2), 1, nominalV);
+ BW_Util.calculateOverclockedNessMulti((int) actualEUT, tRecipe.mDuration * (divider * 2), 1, nominalV, this);
} else {
- calculatePerfectOverclockedNessMulti((int) actualEUT, tRecipe.mDuration, 1, nominalV);
+ BW_Util.calculateOverclockedNessMulti((int) actualEUT, tRecipe.mDuration, 1, nominalV, this);
}
//In case recipe is too OP for that machine
if (this.mMaxProgresstime == Integer.MAX_VALUE - 1 && this.mEUt == Integer.MAX_VALUE - 1) {
diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/util/BW_Util.java b/src/main/java/com/github/bartimaeusnek/bartworks/util/BW_Util.java
index 39cf609c14..4260eb802f 100644
--- a/src/main/java/com/github/bartimaeusnek/bartworks/util/BW_Util.java
+++ b/src/main/java/com/github/bartimaeusnek/bartworks/util/BW_Util.java
@@ -370,10 +370,14 @@ public class BW_Util {
* @param mAmperage - should be 1 ?
*/
public static void calculateOverclockedNessMulti(@Nonnegative int aEUt, @Nonnegative int aDuration, @Nonnegative int mAmperage, @Nonnegative long maxInputVoltage, @Nonnull GT_MetaTileEntity_MultiBlockBase base) {
- calculateOverclockednessMultiInternal(aEUt, aDuration, mAmperage, maxInputVoltage, base, 2);
+ calculateOverclockednessMultiInternal(aEUt, aDuration, mAmperage, maxInputVoltage, base, false);
}
- private static void calculateOverclockednessMultiInternal(@Nonnegative int aEUt, @Nonnegative int aDuration, @Nonnegative int mAmperage, @Nonnegative long maxInputVoltage, @Nonnull GT_MetaTileEntity_MultiBlockBase base, @Nonnegative int modifier){
+ public static void calculatePerfectOverclockedNessMulti(@Nonnegative int aEUt, @Nonnegative int aDuration, @Nonnegative int mAmperage, @Nonnegative long maxInputVoltage, @Nonnull GT_MetaTileEntity_MultiBlockBase base) {
+ calculateOverclockednessMultiInternal(aEUt, aDuration, mAmperage, maxInputVoltage, base, true);
+ }
+
+ private static void calculateOverclockednessMultiInternal(@Nonnegative int aEUt, @Nonnegative int aDuration, @Nonnegative int mAmperage, @Nonnegative long maxInputVoltage, @Nonnull GT_MetaTileEntity_MultiBlockBase base, @Nonnull boolean perfectOC){
byte mTier = (byte) Math.max(0, GT_Utility.getTier(maxInputVoltage));
if (mTier == 0) {
//Long time calculation
@@ -383,7 +387,7 @@ public class BW_Util {
base.mEUt = Integer.MAX_VALUE - 1;
base.mMaxProgresstime = Integer.MAX_VALUE - 1;
} else {
- base.mEUt = aEUt >> modifier;
+ base.mEUt = aEUt >> 2;
base.mMaxProgresstime = (int) xMaxProgresstime;
}
} else {
@@ -395,21 +399,21 @@ public class BW_Util {
base.mMaxProgresstime = aDuration;
while (tempEUt <= V[mTier - 1] * mAmperage) {
- tempEUt <<= modifier;//this actually controls overclocking
+ tempEUt <<= 2;//this actually controls overclocking
//xEUt *= 4;//this is effect of everclocking
- base.mMaxProgresstime >>= 1;//this is effect of overclocking
+ base.mMaxProgresstime >>= perfectOC ? 2 : 1;//this is effect of overclocking
xEUt = base.mMaxProgresstime <= 0 ? xEUt >> 1 : xEUt << 2;//U know, if the time is less than 1 tick make the machine use less power
}
while (xEUt > maxInputVoltage && xEUt >= aEUt){
//downclock one notch until we are good again, we have overshot.
- xEUt >>= modifier;
- base.mMaxProgresstime <<= 1;
+ xEUt >>= 2;
+ base.mMaxProgresstime <<= perfectOC ? 2 : 1;
}
if (xEUt < aEUt){
- xEUt <<= modifier;
- base.mMaxProgresstime >>= 1;
+ xEUt <<= 2;
+ base.mMaxProgresstime >>= perfectOC ? 2 : 1;
}
if (xEUt > Integer.MAX_VALUE - 1) {