aboutsummaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
authorHoleFish <48403212+HoleFish@users.noreply.github.com>2023-12-18 19:29:06 +0800
committerGitHub <noreply@github.com>2023-12-18 12:29:06 +0100
commit33566b87bc49280f0efe261da14c8b509eaecb93 (patch)
treecd4decc1c29776a42a5c6cf6275c027d2fbf9710 /src/main/java
parente1b678e058b5eefb01c55ca9940b0efbdec4b3da (diff)
downloadGT5-Unofficial-33566b87bc49280f0efe261da14c8b509eaecb93.tar.gz
GT5-Unofficial-33566b87bc49280f0efe261da14c8b509eaecb93.tar.bz2
GT5-Unofficial-33566b87bc49280f0efe261da14c8b509eaecb93.zip
Batch mode for compact fusion MKIV-V (#223)
* batch mode * Update en_US.lang
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/goodgenerator/blocks/tileEntity/base/LargeFusionComputerPP.java31
1 files changed, 31 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
index 9583d30198..11f55dff77 100644
--- a/src/main/java/goodgenerator/blocks/tileEntity/base/LargeFusionComputerPP.java
+++ b/src/main/java/goodgenerator/blocks/tileEntity/base/LargeFusionComputerPP.java
@@ -1,9 +1,25 @@
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.logic.ProcessingLogic;
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);
}
@@ -23,4 +39,19 @@ public abstract class LargeFusionComputerPP extends LargeFusionComputer {
return super.getSingleHatchPower() * 8;
}
+ @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;
+ }
}