Mesh upgrade recipes

This commit is contained in:
thedarkcolour 2024-02-13 16:03:21 -08:00
parent e73c16ff76
commit 9f968e6add
10 changed files with 247 additions and 7 deletions

View File

@ -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

View File

@ -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
}

View File

@ -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
}

View File

@ -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
}

View File

@ -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
}

View File

@ -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
}

View File

@ -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
}

View File

@ -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
}

View File

@ -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
}

View File

@ -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<? extends Item> 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<? extends Item> newMesh, RegistryObject<? extends Item> 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<? extends Item> result, Ingredient shell) {
recipes.shapedCrafting(RecipeCategory.TOOLS, result.get(), recipe -> {
recipe.define('#', shell);