From b5260a386d91f916dcefdc50070045da9974cae5 Mon Sep 17 00:00:00 2001 From: LexManos Date: Thu, 15 Jun 2017 19:30:05 -0700 Subject: [PATCH] Filter any recipe starting with _, Such names are reserved for metadata. Actually implement conditions for recipes. --- .../net/minecraftforge/common/crafting/CraftingHelper.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/java/net/minecraftforge/common/crafting/CraftingHelper.java b/src/main/java/net/minecraftforge/common/crafting/CraftingHelper.java index bbcb5e36f..0db04184b 100644 --- a/src/main/java/net/minecraftforge/common/crafting/CraftingHelper.java +++ b/src/main/java/net/minecraftforge/common/crafting/CraftingHelper.java @@ -710,9 +710,7 @@ public class CraftingHelper { while (itr != null && itr.hasNext()) { Path f = itr.next(); - if (!"json".equals(FilenameUtils.getExtension(f.toString())) || - "_factories.json".equals(FilenameUtils.getName(f.toString())) || - "_constants.json".equals(FilenameUtils.getName(f.toString()))) + if (!"json".equals(FilenameUtils.getExtension(f.toString())) || root.relativize(f).toString().startsWith("_")) continue; String name = FilenameUtils.removeExtension(root.relativize(f).toString()).replaceAll("\\\\", "/"); @@ -723,6 +721,8 @@ public class CraftingHelper { { reader = Files.newBufferedReader(f); JsonObject json = JsonUtils.func_193839_a(GSON, reader, JsonObject.class); + if (json.has("conditions") && !CraftingHelper.processConditions(json.getAsJsonArray("conditions"), ctx)) + continue; IRecipe recipe = CraftingHelper.getRecipe(json, ctx); ForgeRegistries.RECIPES.register(recipe.setRegistryName(key)); }