aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/goodgenerator/blocks/tileEntity/base/LargeFusionComputerPP.java
diff options
context:
space:
mode:
authorRaven Szewczyk <git@eigenraven.me>2024-05-25 14:13:58 +0100
committerRaven Szewczyk <git@eigenraven.me>2024-05-25 14:13:58 +0100
commit91b1909427bb0cab0f72505c325b07f8fb39c62e (patch)
treed6570897b7150afd4f3cb1470202af11e3e9ece3 /src/main/java/goodgenerator/blocks/tileEntity/base/LargeFusionComputerPP.java
parent40efa0d238677418071b658b11b0a1a7c9e0d864 (diff)
downloadGT5-Unofficial-91b1909427bb0cab0f72505c325b07f8fb39c62e.tar.gz
GT5-Unofficial-91b1909427bb0cab0f72505c325b07f8fb39c62e.tar.bz2
GT5-Unofficial-91b1909427bb0cab0f72505c325b07f8fb39c62e.zip
Move GoodGen sources
Diffstat (limited to 'src/main/java/goodgenerator/blocks/tileEntity/base/LargeFusionComputerPP.java')
-rw-r--r--src/main/java/goodgenerator/blocks/tileEntity/base/LargeFusionComputerPP.java53
1 files changed, 53 insertions, 0 deletions
diff --git a/src/main/java/goodgenerator/blocks/tileEntity/base/LargeFusionComputerPP.java b/src/main/java/goodgenerator/blocks/tileEntity/base/LargeFusionComputerPP.java
new file mode 100644
index 0000000000..7d87e6fdd1
--- /dev/null
+++ b/src/main/java/goodgenerator/blocks/tileEntity/base/LargeFusionComputerPP.java
@@ -0,0 +1,53 @@
+package goodgenerator.blocks.tileEntity.base;
+
+import static net.minecraft.util.StatCollector.translateToLocal;
+
+import com.github.technus.tectech.thing.metaTileEntity.multi.base.INameFunction;
+import com.github.technus.tectech.thing.metaTileEntity.multi.base.IStatusFunction;
+import com.github.technus.tectech.thing.metaTileEntity.multi.base.LedStatus;
+import com.github.technus.tectech.thing.metaTileEntity.multi.base.Parameters;
+
+import gregtech.api.objects.overclockdescriber.OverclockDescriber;
+import gregtech.api.util.AdvancedFusionOverclockDescriber;
+
+public abstract class LargeFusionComputerPP extends LargeFusionComputer {
+
+ protected Parameters.Group.ParameterIn batchSetting;
+
+ /** Name of the batch setting */
+ private static final INameFunction<LargeFusionComputerPP> BATCH_SETTING_NAME = (base,
+ p) -> translateToLocal("gt.blockmachines.LargeFusionComputerPP.cfgi.0"); // Batch size
+ /** Status of the batch setting */
+ private static final IStatusFunction<LargeFusionComputerPP> BATCH_STATUS = (base, p) -> LedStatus
+ .fromLimitsInclusiveOuterBoundary(p.get(), 1, 0, 32, 128);
+
+ public LargeFusionComputerPP(String name) {
+ super(name);
+ }
+
+ public LargeFusionComputerPP(int id, String name, String nameRegional) {
+ super(id, name, nameRegional);
+ }
+
+ @Override
+ protected OverclockDescriber createOverclockDescriber() {
+ return new AdvancedFusionOverclockDescriber((byte) tier(), capableStartupCanonical());
+ }
+
+ @Override
+ protected void parametersInstantiation_EM() {
+ batchSetting = parametrization.getGroup(9, false)
+ .makeInParameter(1, 1, BATCH_SETTING_NAME, BATCH_STATUS);
+ }
+
+ @Override
+ protected int getMaxBatchSize() {
+ // Batch size 1~128
+ return (int) Math.min(Math.max(batchSetting.get(), 1.0D), 128.0D);
+ }
+
+ @Override
+ public boolean getDefaultBatchMode() {
+ return true;
+ }
+}