diff --git a/src/main/java/com/cleanroommc/groovyscript/compat/mods/thaumcraft/Crucible.java b/src/main/java/com/cleanroommc/groovyscript/compat/mods/thaumcraft/Crucible.java index 1414ae131..1f95422cd 100644 --- a/src/main/java/com/cleanroommc/groovyscript/compat/mods/thaumcraft/Crucible.java +++ b/src/main/java/com/cleanroommc/groovyscript/compat/mods/thaumcraft/Crucible.java @@ -120,6 +120,7 @@ public void removeAll() { } } + @Property(property = "output", comp = @Comp(eq = 1)) public static class RecipeBuilder extends AbstractRecipeBuilder { @Property diff --git a/src/main/java/com/cleanroommc/groovyscript/compat/mods/thaumcraft/InfusionCrafting.java b/src/main/java/com/cleanroommc/groovyscript/compat/mods/thaumcraft/InfusionCrafting.java index 703cec41c..f82fd41d4 100644 --- a/src/main/java/com/cleanroommc/groovyscript/compat/mods/thaumcraft/InfusionCrafting.java +++ b/src/main/java/com/cleanroommc/groovyscript/compat/mods/thaumcraft/InfusionCrafting.java @@ -9,7 +9,6 @@ import com.cleanroommc.groovyscript.helper.SimpleObjectStream; import com.cleanroommc.groovyscript.helper.ingredient.IngredientHelper; import com.cleanroommc.groovyscript.helper.recipe.AbstractRecipeBuilder; -import com.cleanroommc.groovyscript.helper.recipe.RecipeName; import com.cleanroommc.groovyscript.registry.VirtualizedRegistry; import net.minecraft.item.ItemStack; import net.minecraft.util.ResourceLocation; @@ -127,6 +126,9 @@ public void removeAll() { } } + @Property(property = "input", comp = @Comp(gte = 1)) + @Property(property = "output", comp = @Comp(eq = 1)) + @Property(property = "name") public static class RecipeBuilder extends AbstractRecipeBuilder { @Property(comp = @Comp(not = "null")) @@ -138,6 +140,11 @@ public static class RecipeBuilder extends AbstractRecipeBuilder @Property private int instability; + @Override + public String getRecipeNamePrefix() { + return "infusion_matrix_recipe"; + } + @RecipeBuilderMethodDescription public RecipeBuilder mainInput(IIngredient ingredient) { this.mainInput = ingredient; @@ -204,7 +211,7 @@ protected int getMaxItemInput() { @Override public void validate(GroovyLog.Msg msg) { - validateItems(msg, 1, 100, 1, 1); + validateItems(msg, 1, Integer.MAX_VALUE, 1, 1); msg.add(IngredientHelper.isEmpty(mainInput), () -> "Main Input must not be empty"); // More than 1 item cannot be placed validateStackSize(msg, 1, "mainInput", mainInput); @@ -214,6 +221,7 @@ public void validate(GroovyLog.Msg msg) { if (instability < 0) { instability = 0; } + validateName(); } @Override @@ -223,7 +231,7 @@ public void validate(GroovyLog.Msg msg) { Object[] inputs = this.input.stream().map(IIngredient::toMcIngredient).toArray(); InfusionRecipe recipe = new InfusionRecipe(researchKey, output.get(0), instability, aspects, mainInput.toMcIngredient(), inputs); - ModSupport.THAUMCRAFT.get().infusionCrafting.add(RecipeName.generateRl("infusion_matrix_recipe"), recipe); + ModSupport.THAUMCRAFT.get().infusionCrafting.add(super.name, recipe); return recipe; } }