From 9f968e6adde6b83a38aee654fe1b8b3c4dc4a799 Mon Sep 17 00:00:00 2001 From: thedarkcolour <30441001+thedarkcolour@users.noreply.github.com> Date: Tue, 13 Feb 2024 16:03:21 -0800 Subject: [PATCH] Mesh upgrade recipes --- .../9fb1092f32d4fcbf9e061ffd718d4ec689c6c95e | 10 +++++- .../misc/diamond_mesh_from_golden_mesh.json | 33 +++++++++++++++++ .../misc/flint_mesh_from_string_mesh.json | 35 +++++++++++++++++++ .../misc/golden_mesh_from_iron_mesh.json | 33 +++++++++++++++++ .../misc/iron_mesh_from_flint_mesh.json | 33 +++++++++++++++++ .../diamond_mesh_from_golden_mesh.json | 21 +++++++++++ .../recipes/flint_mesh_from_string_mesh.json | 21 +++++++++++ .../recipes/golden_mesh_from_iron_mesh.json | 21 +++++++++++ .../recipes/iron_mesh_from_flint_mesh.json | 21 +++++++++++ .../exdeorum/data/recipe/Recipes.java | 26 ++++++++++---- 10 files changed, 247 insertions(+), 7 deletions(-) create mode 100644 src/generated/resources/data/exdeorum/advancements/recipes/misc/diamond_mesh_from_golden_mesh.json create mode 100644 src/generated/resources/data/exdeorum/advancements/recipes/misc/flint_mesh_from_string_mesh.json create mode 100644 src/generated/resources/data/exdeorum/advancements/recipes/misc/golden_mesh_from_iron_mesh.json create mode 100644 src/generated/resources/data/exdeorum/advancements/recipes/misc/iron_mesh_from_flint_mesh.json create mode 100644 src/generated/resources/data/exdeorum/recipes/diamond_mesh_from_golden_mesh.json create mode 100644 src/generated/resources/data/exdeorum/recipes/flint_mesh_from_string_mesh.json create mode 100644 src/generated/resources/data/exdeorum/recipes/golden_mesh_from_iron_mesh.json create mode 100644 src/generated/resources/data/exdeorum/recipes/iron_mesh_from_flint_mesh.json diff --git a/src/generated/resources/.cache/9fb1092f32d4fcbf9e061ffd718d4ec689c6c95e b/src/generated/resources/.cache/9fb1092f32d4fcbf9e061ffd718d4ec689c6c95e index 29042778..3aa35b8b 100644 --- a/src/generated/resources/.cache/9fb1092f32d4fcbf9e061ffd718d4ec689c6c95e +++ b/src/generated/resources/.cache/9fb1092f32d4fcbf9e061ffd718d4ec689c6c95e @@ -1,4 +1,4 @@ -// 1.20.1 2024-02-09T20:14:05.875864 Recipes +// 1.20.1 2024-02-13T15:52:36.681433 Recipes e37b64428f17e304e91539ac0513456d7ce40cd1 data/exdeorum/advancements/recipes/building_blocks/sponge.json 5ad481a0c376c1a1785a5d3b992064d0ec0bf3b0 data/exdeorum/advancements/recipes/food/end_cake.json 25dd027e844a72b03c95dbe5e3c3dd8c738ceb00 data/exdeorum/advancements/recipes/misc/acacia_barrel.json @@ -30,12 +30,16 @@ cf30753819f21a29082554871fa4617a060eb11c data/exdeorum/advancements/recipes/misc 6fa805a246c424ea651fff9003e11f3c8632cd3c data/exdeorum/advancements/recipes/misc/dark_oak_crucible.json ce387be36edacdb259a5ea4564ad4b14ccec7950 data/exdeorum/advancements/recipes/misc/dark_oak_sieve.json 05ed034071a2c7df228c235fa1104052aca23ebc data/exdeorum/advancements/recipes/misc/diamond_mesh.json +e2d8907fddf4e1cfce8264ecb4f64e8a0a740864 data/exdeorum/advancements/recipes/misc/diamond_mesh_from_golden_mesh.json 7a521fa3d4d9c602a1135e22ef63d5e407f3262a data/exdeorum/advancements/recipes/misc/diorite.json fd152bac09d1c3bbe67302f13c2135428d6ef48e data/exdeorum/advancements/recipes/misc/flint_mesh.json +c53bfdee553d63b3e96194991a4b14dfd7bcb083 data/exdeorum/advancements/recipes/misc/flint_mesh_from_string_mesh.json f3d25fad0818f06ed341008daa157732a41702f0 data/exdeorum/advancements/recipes/misc/golden_mesh.json +2ad83bb51d746348b7be8a3a50c6a96d07d58c9e data/exdeorum/advancements/recipes/misc/golden_mesh_from_iron_mesh.json 8e0b91838f1597f97158c6d6c1d5d4dd1da3ceb7 data/exdeorum/advancements/recipes/misc/gold_ore.json 13e1a8346dc49decee9de11f6d589f0b033aa65d data/exdeorum/advancements/recipes/misc/granite.json 6b6169e1c93c990cdac051f6b96849a4cf1850ad data/exdeorum/advancements/recipes/misc/iron_mesh.json +2bc30374479baadb359411edd929ebf0fb1e9a37 data/exdeorum/advancements/recipes/misc/iron_mesh_from_flint_mesh.json 2f2e4e3f4893390b7248a1fd9fd405d628aaa69c data/exdeorum/advancements/recipes/misc/iron_ore.json 13ae44cb8da590953fc295c730e3606ab8c8ef7e data/exdeorum/advancements/recipes/misc/jungle_barrel.json 4e23fd62963a608c73565d61966cd700537b48a7 data/exdeorum/advancements/recipes/misc/jungle_crucible.json @@ -231,6 +235,7 @@ b14283dd10c79ddb507aa849a9a432266b615f19 data/exdeorum/recipes/dark_oak_sieve.js 49db33903b6892db0f17ce50e9a3ca78aef007ed data/exdeorum/recipes/dead_sieve.json 0558034d3940e2bd4046ad2af07c42068852dc76 data/exdeorum/recipes/diamond_hammer.json 4bb1b1df247eaa495b18df77893ac6cfaaa9477a data/exdeorum/recipes/diamond_mesh.json +e8b0389a7d980e745bc8df86c2d3d35b0792cad4 data/exdeorum/recipes/diamond_mesh_from_golden_mesh.json 8244864c8c0fb88af380c18bb593a8cb3982abbd data/exdeorum/recipes/diamond_watering_can.json 596e6fb9a4c633938b7b3c778baad53cdd9fd2ed data/exdeorum/recipes/diorite.json 44da784210aab9a5035b77cb1fa71761b025ef62 data/exdeorum/recipes/dusk_barrel.json @@ -241,11 +246,13 @@ a3b9f47a73b9cbb4d908ac0b8ad90b308271c04c data/exdeorum/recipes/fir_barrel.json 7f7a034824513701aa0493267f7f8219d8fdef89 data/exdeorum/recipes/fir_crucible.json 8821d420a2f1dae54a0276cf33f94b5689eda056 data/exdeorum/recipes/fir_sieve.json fafeef8c11df81d877166ba0d4add3823515dad3 data/exdeorum/recipes/flint_mesh.json +31d74ecb43dbcc5b40a1ef4694974166d21f4781 data/exdeorum/recipes/flint_mesh_from_string_mesh.json c778aaf0af19417cab77cc60852725c871190ad3 data/exdeorum/recipes/frostbright_barrel.json 3023dca367b5b56ef41c2819c9169bb961f0c9a8 data/exdeorum/recipes/frostbright_crucible.json 500a5175a3660f37899b652a3c18c3d867f7c504 data/exdeorum/recipes/frostbright_sieve.json 4adddee39d6ff6ee58dedfdeb32265a051f9a722 data/exdeorum/recipes/golden_hammer.json a32f858ab7b6b5d5546b8474175a44a93d85f8bc data/exdeorum/recipes/golden_mesh.json +58896fb67b08a41479546cd64f6e97ea9afbe013 data/exdeorum/recipes/golden_mesh_from_iron_mesh.json a119064052e4bb6873c6dc10c50b36e52e9dc58c data/exdeorum/recipes/golden_oak_crucible.json e77acbd0878f662f441d590287e71e66593ef928 data/exdeorum/recipes/golden_watering_can.json 44ed0e97591833c39e32847f22edf333ae551b22 data/exdeorum/recipes/gold_ore.json @@ -282,6 +289,7 @@ f6b16e8168c798bc433e19edf5ede3a7703865f5 data/exdeorum/recipes/hammer/wood_chipp 2995ec75979bfb8b0415b8a1da7db7001b9ae433 data/exdeorum/recipes/hellbark_sieve.json 3067ccffd037b6d16ba09ae181813be6471d2050 data/exdeorum/recipes/iron_hammer.json f046e0fa73b12cea658363a082ad0da48e21e85d data/exdeorum/recipes/iron_mesh.json +a1a0885f28b2cbe72251d6db69df22a4e8e47d97 data/exdeorum/recipes/iron_mesh_from_flint_mesh.json 6f06b4d91979afc8000988cd20519379152a373b data/exdeorum/recipes/iron_ore.json f4ea515ec72c867b9c0b54df162bd07c62e1a7ce data/exdeorum/recipes/iron_watering_can.json 4d7d68580f0271eea4728062fa608b87aa04570f data/exdeorum/recipes/jacaranda_barrel.json diff --git a/src/generated/resources/data/exdeorum/advancements/recipes/misc/diamond_mesh_from_golden_mesh.json b/src/generated/resources/data/exdeorum/advancements/recipes/misc/diamond_mesh_from_golden_mesh.json new file mode 100644 index 00000000..2609813c --- /dev/null +++ b/src/generated/resources/data/exdeorum/advancements/recipes/misc/diamond_mesh_from_golden_mesh.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "tag": "forge:gems/diamond" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "exdeorum:diamond_mesh_from_golden_mesh" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "exdeorum:diamond_mesh_from_golden_mesh" + ] + }, + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/src/generated/resources/data/exdeorum/advancements/recipes/misc/flint_mesh_from_string_mesh.json b/src/generated/resources/data/exdeorum/advancements/recipes/misc/flint_mesh_from_string_mesh.json new file mode 100644 index 00000000..25b76677 --- /dev/null +++ b/src/generated/resources/data/exdeorum/advancements/recipes/misc/flint_mesh_from_string_mesh.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": [ + "minecraft:flint" + ] + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "exdeorum:flint_mesh_from_string_mesh" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "exdeorum:flint_mesh_from_string_mesh" + ] + }, + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/src/generated/resources/data/exdeorum/advancements/recipes/misc/golden_mesh_from_iron_mesh.json b/src/generated/resources/data/exdeorum/advancements/recipes/misc/golden_mesh_from_iron_mesh.json new file mode 100644 index 00000000..0af0b5a8 --- /dev/null +++ b/src/generated/resources/data/exdeorum/advancements/recipes/misc/golden_mesh_from_iron_mesh.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "tag": "forge:ingots/gold" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "exdeorum:golden_mesh_from_iron_mesh" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "exdeorum:golden_mesh_from_iron_mesh" + ] + }, + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/src/generated/resources/data/exdeorum/advancements/recipes/misc/iron_mesh_from_flint_mesh.json b/src/generated/resources/data/exdeorum/advancements/recipes/misc/iron_mesh_from_flint_mesh.json new file mode 100644 index 00000000..63dd8b93 --- /dev/null +++ b/src/generated/resources/data/exdeorum/advancements/recipes/misc/iron_mesh_from_flint_mesh.json @@ -0,0 +1,33 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "tag": "forge:ingots/iron" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "exdeorum:iron_mesh_from_flint_mesh" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "exdeorum:iron_mesh_from_flint_mesh" + ] + }, + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/src/generated/resources/data/exdeorum/recipes/diamond_mesh_from_golden_mesh.json b/src/generated/resources/data/exdeorum/recipes/diamond_mesh_from_golden_mesh.json new file mode 100644 index 00000000..94c15ad7 --- /dev/null +++ b/src/generated/resources/data/exdeorum/recipes/diamond_mesh_from_golden_mesh.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "#": { + "tag": "forge:gems/diamond" + }, + "M": { + "item": "exdeorum:golden_mesh" + } + }, + "pattern": [ + " # ", + "#M#", + " # " + ], + "result": { + "item": "exdeorum:diamond_mesh" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/exdeorum/recipes/flint_mesh_from_string_mesh.json b/src/generated/resources/data/exdeorum/recipes/flint_mesh_from_string_mesh.json new file mode 100644 index 00000000..f27759d8 --- /dev/null +++ b/src/generated/resources/data/exdeorum/recipes/flint_mesh_from_string_mesh.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "#": { + "item": "minecraft:flint" + }, + "M": { + "item": "exdeorum:string_mesh" + } + }, + "pattern": [ + " # ", + "#M#", + " # " + ], + "result": { + "item": "exdeorum:flint_mesh" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/exdeorum/recipes/golden_mesh_from_iron_mesh.json b/src/generated/resources/data/exdeorum/recipes/golden_mesh_from_iron_mesh.json new file mode 100644 index 00000000..4ddda303 --- /dev/null +++ b/src/generated/resources/data/exdeorum/recipes/golden_mesh_from_iron_mesh.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "#": { + "tag": "forge:ingots/gold" + }, + "M": { + "item": "exdeorum:iron_mesh" + } + }, + "pattern": [ + " # ", + "#M#", + " # " + ], + "result": { + "item": "exdeorum:golden_mesh" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/generated/resources/data/exdeorum/recipes/iron_mesh_from_flint_mesh.json b/src/generated/resources/data/exdeorum/recipes/iron_mesh_from_flint_mesh.json new file mode 100644 index 00000000..75ad28ad --- /dev/null +++ b/src/generated/resources/data/exdeorum/recipes/iron_mesh_from_flint_mesh.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "#": { + "tag": "forge:ingots/iron" + }, + "M": { + "item": "exdeorum:flint_mesh" + } + }, + "pattern": [ + " # ", + "#M#", + " # " + ], + "result": { + "item": "exdeorum:iron_mesh" + }, + "show_notification": true +} \ No newline at end of file diff --git a/src/main/java/thedarkcolour/exdeorum/data/recipe/Recipes.java b/src/main/java/thedarkcolour/exdeorum/data/recipe/Recipes.java index 04a3432f..bc242cb6 100644 --- a/src/main/java/thedarkcolour/exdeorum/data/recipe/Recipes.java +++ b/src/main/java/thedarkcolour/exdeorum/data/recipe/Recipes.java @@ -247,10 +247,14 @@ public class Recipes { // Meshes recipes.grid3x3(EItems.STRING_MESH.get(), ingredient(Tags.Items.STRING)); - mesh(recipes, EItems.FLINT_MESH.get(), ingredient(Items.FLINT)); - mesh(recipes, EItems.IRON_MESH.get(), ingredient(Tags.Items.INGOTS_IRON)); - mesh(recipes, EItems.GOLDEN_MESH.get(), ingredient(Tags.Items.INGOTS_GOLD)); - mesh(recipes, EItems.DIAMOND_MESH.get(), ingredient(Tags.Items.GEMS_DIAMOND)); + mesh(recipes, EItems.FLINT_MESH, ingredient(Items.FLINT)); + mesh(recipes, EItems.IRON_MESH, ingredient(Tags.Items.INGOTS_IRON)); + mesh(recipes, EItems.GOLDEN_MESH, ingredient(Tags.Items.INGOTS_GOLD)); + mesh(recipes, EItems.DIAMOND_MESH, ingredient(Tags.Items.GEMS_DIAMOND)); + meshUpgrade(recipes, EItems.FLINT_MESH, EItems.STRING_MESH, ingredient(Items.FLINT)); + meshUpgrade(recipes, EItems.IRON_MESH, EItems.FLINT_MESH, ingredient(Tags.Items.INGOTS_IRON)); + meshUpgrade(recipes, EItems.GOLDEN_MESH, EItems.IRON_MESH, ingredient(Tags.Items.INGOTS_GOLD)); + meshUpgrade(recipes, EItems.DIAMOND_MESH, EItems.GOLDEN_MESH, ingredient(Tags.Items.GEMS_DIAMOND)); recipes.netheriteUpgrade(RecipeCategory.MISC, ingredient(EItems.DIAMOND_MESH), EItems.NETHERITE_MESH.get()); // Watering cans @@ -380,8 +384,8 @@ public class Recipes { }); } - private static void mesh(MKRecipeProvider recipes, Item result, Ingredient ingredient) { - recipes.shapedCrafting(RecipeCategory.MISC, result, recipe -> { + private static void mesh(MKRecipeProvider recipes, Supplier result, Ingredient ingredient) { + recipes.shapedCrafting(RecipeCategory.MISC, result.get(), recipe -> { recipe.define('#', ingredient); recipe.define('S', ingredient(Tags.Items.STRING)); recipe.pattern("S#S"); @@ -390,6 +394,16 @@ public class Recipes { }); } + private static void meshUpgrade(MKRecipeProvider recipes, RegistryObject newMesh, RegistryObject previousMesh, Ingredient ingredient) { + recipes.shapedCrafting(newMesh.getId().getPath() + "_from_" + previousMesh.getId().getPath(), RecipeCategory.MISC, newMesh.get(), recipe -> { + recipe.define('#', ingredient); + recipe.define('M', previousMesh.get()); + recipe.pattern(" # "); + recipe.pattern("#M#"); + recipe.pattern(" # "); + }); + } + private static void wateringCan(MKRecipeProvider recipes, Supplier result, Ingredient shell) { recipes.shapedCrafting(RecipeCategory.TOOLS, result.get(), recipe -> { recipe.define('#', shell);