diff --git a/src/main/java/net/minecraftforge/common/crafting/CraftingHelper.java b/src/main/java/net/minecraftforge/common/crafting/CraftingHelper.java index 0dc77d6061..58575ce7f2 100644 --- a/src/main/java/net/minecraftforge/common/crafting/CraftingHelper.java +++ b/src/main/java/net/minecraftforge/common/crafting/CraftingHelper.java @@ -735,7 +735,7 @@ public class CraftingHelper { { reader = Files.newBufferedReader(f); JsonObject json = JsonUtils.fromJson(GSON, reader, JsonObject.class); - if (json.has("conditions") && !CraftingHelper.processConditions(json.getAsJsonArray("conditions"), ctx)) + if (json.has("conditions") && !CraftingHelper.processConditions(JsonUtils.getJsonArray(json, "conditions"), ctx)) continue; IRecipe recipe = CraftingHelper.getRecipe(json, ctx); ForgeRegistries.RECIPES.register(recipe.setRegistryName(key)); diff --git a/src/test/resources/assets/crafting_system_test/recipes/conditions_property_not_array.json b/src/test/resources/assets/crafting_system_test/recipes/conditions_property_not_array.json new file mode 100644 index 0000000000..49f8109603 --- /dev/null +++ b/src/test/resources/assets/crafting_system_test/recipes/conditions_property_not_array.json @@ -0,0 +1,21 @@ +{ + "conditions": { + "not an array": "conditions property must be an array" + }, + "type": "crafting_shaped", + "group": "planks", + "pattern": [ + "#" + ], + "key": { + "#": { + "item": "minecraft:log2", + "data": 0 + } + }, + "result": { + "item": "minecraft:planks", + "data": 4, + "count": 4 + } +}