aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/gregtech/api')
-rw-r--r--src/main/java/gregtech/api/recipe/check/CheckRecipeResultRegistry.java7
-rw-r--r--src/main/java/gregtech/api/recipe/check/ResultInsufficientStartupPowerBigInt.java59
2 files changed, 66 insertions, 0 deletions
diff --git a/src/main/java/gregtech/api/recipe/check/CheckRecipeResultRegistry.java b/src/main/java/gregtech/api/recipe/check/CheckRecipeResultRegistry.java
index 7112b47886..41ea858fec 100644
--- a/src/main/java/gregtech/api/recipe/check/CheckRecipeResultRegistry.java
+++ b/src/main/java/gregtech/api/recipe/check/CheckRecipeResultRegistry.java
@@ -1,5 +1,6 @@
package gregtech.api.recipe.check;
+import java.math.BigInteger;
import java.util.HashMap;
import java.util.Map;
@@ -142,11 +143,17 @@ public final class CheckRecipeResultRegistry {
return new ResultInsufficientStartupPower(required);
}
+ @Nonnull
+ public static CheckRecipeResult insufficientStartupPower(BigInteger required) {
+ return new ResultInsufficientStartupPowerBigInt(required);
+ }
+
static {
register(new SimpleCheckRecipeResult(false, "", false));
register(new ResultInsufficientPower(0));
register(new ResultInsufficientHeat(0));
register(new ResultInsufficientMachineTier(0));
register(new ResultInsufficientStartupPower(0));
+ register(new ResultInsufficientStartupPowerBigInt(BigInteger.ZERO));
}
}
diff --git a/src/main/java/gregtech/api/recipe/check/ResultInsufficientStartupPowerBigInt.java b/src/main/java/gregtech/api/recipe/check/ResultInsufficientStartupPowerBigInt.java
new file mode 100644
index 0000000000..6a719b3c9c
--- /dev/null
+++ b/src/main/java/gregtech/api/recipe/check/ResultInsufficientStartupPowerBigInt.java
@@ -0,0 +1,59 @@
+package gregtech.api.recipe.check;
+
+import static util.Util.toStandardForm;
+
+import java.math.BigInteger;
+import java.util.Objects;
+
+import net.minecraft.network.PacketBuffer;
+import net.minecraft.util.StatCollector;
+
+import org.jetbrains.annotations.NotNull;
+
+public class ResultInsufficientStartupPowerBigInt implements CheckRecipeResult {
+
+ private String required;
+
+ public ResultInsufficientStartupPowerBigInt(BigInteger required) {
+ this.required = toStandardForm(required);
+ }
+
+ @NotNull
+ @Override
+ public String getID() {
+ return "insufficient_startup_power_bigint";
+ }
+
+ @Override
+ public boolean wasSuccessful() {
+ return false;
+ }
+
+ @NotNull
+ @Override
+ public String getDisplayString() {
+ return Objects.requireNonNull(
+ StatCollector.translateToLocalFormatted("GT5U.gui.text.insufficient_startup_power", required));
+ }
+
+ @NotNull
+ @Override
+ public CheckRecipeResult newInstance() {
+ return new ResultInsufficientStartupPowerBigInt(BigInteger.ZERO);
+ }
+
+ @Override
+ public void encode(@NotNull PacketBuffer buffer) {
+ try {
+ buffer.writeStringToBuffer(required);
+ } catch (Exception ignored) {}
+
+ }
+
+ @Override
+ public void decode(PacketBuffer buffer) {
+ try {
+ required = buffer.readStringFromBuffer(32768);
+ } catch (Exception ignored) {}
+ }
+}