aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api/util/GT_RecipeBuilder.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/gregtech/api/util/GT_RecipeBuilder.java')
-rw-r--r--src/main/java/gregtech/api/util/GT_RecipeBuilder.java22
1 files changed, 20 insertions, 2 deletions
diff --git a/src/main/java/gregtech/api/util/GT_RecipeBuilder.java b/src/main/java/gregtech/api/util/GT_RecipeBuilder.java
index 4366109fce..db01347f10 100644
--- a/src/main/java/gregtech/api/util/GT_RecipeBuilder.java
+++ b/src/main/java/gregtech/api/util/GT_RecipeBuilder.java
@@ -137,6 +137,18 @@ public class GT_RecipeBuilder {
}
}
+ private static void handleInvalidRecipe() {
+ if (!PANIC_MODE && !DEBUG_MODE) {
+ return;
+ }
+ // place a breakpoint here to catch all these issues
+ GT_Log.err.print("invalid recipe");
+ new IllegalArgumentException().printStackTrace(GT_Log.err);
+ if (PANIC_MODE) {
+ throw new IllegalArgumentException("invalid recipe");
+ }
+ }
+
public static void handleRecipeCollision(String details) {
if (!PANIC_MODE && !DEBUG_MODE) {
return;
@@ -608,7 +620,10 @@ public class GT_RecipeBuilder {
}
public Optional<GT_Recipe> build() {
- if (!valid) return Optional.empty();
+ if (!valid) {
+ if (DEBUG_MODE) handleInvalidRecipe();
+ return Optional.empty();
+ }
preBuildChecks();
optimize();
return Optional.of(
@@ -640,7 +655,10 @@ public class GT_RecipeBuilder {
if (inputsOreDict == null) {
throw new UnsupportedOperationException();
}
- if (!valid) return Optional.empty();
+ if (!valid) {
+ if (DEBUG_MODE) handleInvalidRecipe();
+ return Optional.empty();
+ }
preBuildChecks();
// no optimize.
return Optional.of(