aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/common/tileentities
diff options
context:
space:
mode:
authorGlease <4586901+Glease@users.noreply.github.com>2020-10-13 22:26:49 +0800
committerGitHub <noreply@github.com>2020-10-13 22:26:49 +0800
commit344b00012aca59c4b0372185e41f529baffa5da3 (patch)
tree7381f76e13a24e3b5b1669fc5947acb3d15dfbfb /src/main/java/gregtech/common/tileentities
parent3ff33adbffd26a70cdcce3162da14c48ed60c668 (diff)
downloadGT5-Unofficial-344b00012aca59c4b0372185e41f529baffa5da3.tar.gz
GT5-Unofficial-344b00012aca59c4b0372185e41f529baffa5da3.tar.bz2
GT5-Unofficial-344b00012aca59c4b0372185e41f529baffa5da3.zip
Make cleanroom workspeed based on height and tier
It is now 225 second per block height. A standard 3x4x3 cleanroom will take 7.5 minute to fire up (down from 8.33 minute). Any wider will not cause it to slowdown. The cleanroom will be overclockable (not perfect).
Diffstat (limited to 'src/main/java/gregtech/common/tileentities')
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Cleanroom.java13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Cleanroom.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Cleanroom.java
index 673c2cabaf..6ceebc3877 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Cleanroom.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Cleanroom.java
@@ -18,8 +18,10 @@ import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.item.ItemStack;
import static gregtech.api.enums.GT_Values.debugCleanroom;
+import static gregtech.api.enums.GT_Values.V;
public class GT_MetaTileEntity_Cleanroom extends GT_MetaTileEntity_MultiBlockBase {
+ private int mHeight = -1;
public GT_MetaTileEntity_Cleanroom(int aID, String aName, String aNameRegional) {
super(aID, aName, aNameRegional);
@@ -46,17 +48,20 @@ public class GT_MetaTileEntity_Cleanroom extends GT_MetaTileEntity_MultiBlockBas
"Up to 10 Machine Hull Item & Energy transfer through walls",
"Remaining Blocks: Plascrete, 20 min",
GT_Values.cleanroomGlass+"% of the Plascrete can be Reinforced Glass (min 20 Plascrete still apply)",
- "Consumes 40 EU/t when first turned on and 4 EU/t once at 100% efficiency",
+ "Consumes 40 EU/t when first turned on and 4 EU/t once at 100% efficiency when not overclocked",
"An energy hatch accepts up to 2A, so you can use 2A LV or 1A MV",
"2 LV batteries + 1 LV generator or 1 MV generator",
+ "Time required to reach full efficiency is propotional to the height of empty space within.",
"Make sure your Energy Hatch matches!"};
}
@Override
public boolean checkRecipe(ItemStack aStack) {
mEfficiencyIncrease = 100;
- mMaxProgresstime = 100;
- mEUt = -4;
+ // use the standard overclock mechanism to determine duration and estimate a maximum consumption
+ calculateOverclockedNessMulti(40, 45 * Math.min(1, mHeight - 1), 1, getMaxInputVoltage());
+ // negate it to trigger the special energy consumption function. divide by 10 to get the actual final consumption.
+ mEUt /= -10;
return true;
}
@@ -231,6 +236,8 @@ public class GT_MetaTileEntity_Cleanroom extends GT_MetaTileEntity_MultiBlockBas
float ratio = (((float)mPlascreteCount)/100f)* GT_Values.cleanroomGlass;
+ this.mHeight = -y;
+
return mPlascreteCount>=20 && mGlassCount < (int) Math.floor(ratio);
}