diff options
Diffstat (limited to 'src/main/java/gregtech/common')
2 files changed, 13 insertions, 5 deletions
diff --git a/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Solar.java b/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Solar.java index d08df611f7..59f84ebd91 100644 --- a/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Solar.java +++ b/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Solar.java @@ -173,13 +173,14 @@ public class GT_MetaTileEntity_Boiler_Solar extends GT_MetaTileEntity_Boiler { if (mTemperature < 100) { return 0; } - if (mRunTimeTicks > mConfig.getCalcificationTicks()) { + if (mRunTimeTicks > mConfig.getMaxRuntimeTicks()) { + return mConfig.getMinOutputPerSecond(); + } else if (mRunTimeTicks > mConfig.getCalcificationTicks()) { /* When reaching calcification ticks; discount the proportion of run-time spent on calcification * from the maximum output per second, and return this or the minimum output per second */ - return Math.max(mConfig.getMinOutputPerSecond(), - mConfig.getMaxOutputPerSecond() - - mConfig.getMaxOutputPerSecond() * (mRunTimeTicks - mConfig.getCalcificationTicks()) / mConfig.getCalcificationTicks()); + return mConfig.getMaxOutputPerSecond() + - mConfig.getMaxOutputPerSecond() * (mRunTimeTicks - mConfig.getCalcificationTicks()) / mConfig.getCalcificationTicks(); } else { return mConfig.getMaxOutputPerSecond(); } @@ -268,6 +269,7 @@ public class GT_MetaTileEntity_Boiler_Solar extends GT_MetaTileEntity_Boiler { private final int minOutputPerSecond; private final int maxOutputPerSecond; private final int coolDownTicks; + private final int maxRuntimeTicks; public Config(String aCategory, int aDefaultCalcificationTicks, @@ -280,6 +282,8 @@ public class GT_MetaTileEntity_Boiler_Solar extends GT_MetaTileEntity_Boiler { minOutputPerSecond = get(aCategory,"MinOutputPerSecond", aDefaultMinOutputPerSecond); maxOutputPerSecond = get(aCategory,"MaxOutputPerSecond", aDefaultMaxOutputPerSecond); coolDownTicks = get(aCategory,"CoolDownTicks", aDefaultCoolDownTicks, "Number of ticks it takes to lose 1°C."); + // After which min output is reached. + maxRuntimeTicks = (getMaxOutputPerSecond() - getMinOutputPerSecond()) * getCalcificationTicks() / getMaxOutputPerSecond() + getCalcificationTicks(); } protected int get(final String aCategory, final String aKey, final int aDefaultValue, final String... aComments) { @@ -305,5 +309,9 @@ public class GT_MetaTileEntity_Boiler_Solar extends GT_MetaTileEntity_Boiler { public int getCoolDownTicks() { return coolDownTicks; } + + public int getMaxRuntimeTicks() { + return maxRuntimeTicks; + } } } diff --git a/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Solar_Steel.java b/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Solar_Steel.java index d7a003ac5d..ff77b049c4 100644 --- a/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Solar_Steel.java +++ b/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Solar_Steel.java @@ -30,7 +30,7 @@ public class GT_MetaTileEntity_Boiler_Solar_Steel extends GT_MetaTileEntity_Boil @Override protected Config createConfig() { - return new Config(machineconfig + ".boiler.solar.steel",108000, 120, 360, 75); + return new Config(machineconfig + ".boiler.solar.steel", 1080000, 120, 360, 75); } @Override |