From 7effc4f8894b0f99c9d9142256103f64f3b4494e Mon Sep 17 00:00:00 2001 From: 17146 <1714673995@qq.com> Date: Sat, 12 Jul 2025 20:43:41 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A7=84=E8=8C=83=E5=8C=96=E6=8C=87=E7=A4=BA?= =?UTF-8?q?=E5=99=A8=E9=85=8D=E6=96=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../recipes/misc/artillery_indicator.json | 32 +++++++++++++++++++ .../misc/artillery_indicator_clear.json | 32 +++++++++++++++++++ .../recipe/artillery_indicator.json} | 12 +++---- .../recipe/artillery_indicator_clear.json} | 4 +-- .../datagen/ModRecipeProvider.java | 14 +++++++- 5 files changed, 85 insertions(+), 9 deletions(-) create mode 100644 src/generated/resources/data/superbwarfare/advancement/recipes/misc/artillery_indicator.json create mode 100644 src/generated/resources/data/superbwarfare/advancement/recipes/misc/artillery_indicator_clear.json rename src/{main/resources/data/superbwarfare/recipe/artillery_indicator_crafting.json => generated/resources/data/superbwarfare/recipe/artillery_indicator.json} (83%) rename src/{main/resources/data/superbwarfare/recipe/artillery_indicator.json => generated/resources/data/superbwarfare/recipe/artillery_indicator_clear.json} (73%) diff --git a/src/generated/resources/data/superbwarfare/advancement/recipes/misc/artillery_indicator.json b/src/generated/resources/data/superbwarfare/advancement/recipes/misc/artillery_indicator.json new file mode 100644 index 000000000..486f2c639 --- /dev/null +++ b/src/generated/resources/data/superbwarfare/advancement/recipes/misc/artillery_indicator.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_spyglass": { + "conditions": { + "items": [ + { + "items": "minecraft:spyglass" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "superbwarfare:artillery_indicator" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_spyglass" + ] + ], + "rewards": { + "recipes": [ + "superbwarfare:artillery_indicator" + ] + } +} \ No newline at end of file diff --git a/src/generated/resources/data/superbwarfare/advancement/recipes/misc/artillery_indicator_clear.json b/src/generated/resources/data/superbwarfare/advancement/recipes/misc/artillery_indicator_clear.json new file mode 100644 index 000000000..36d8410a6 --- /dev/null +++ b/src/generated/resources/data/superbwarfare/advancement/recipes/misc/artillery_indicator_clear.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_artillery_indicator": { + "conditions": { + "items": [ + { + "items": "superbwarfare:artillery_indicator" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "superbwarfare:artillery_indicator_clear" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_artillery_indicator" + ] + ], + "rewards": { + "recipes": [ + "superbwarfare:artillery_indicator_clear" + ] + } +} \ No newline at end of file diff --git a/src/main/resources/data/superbwarfare/recipe/artillery_indicator_crafting.json b/src/generated/resources/data/superbwarfare/recipe/artillery_indicator.json similarity index 83% rename from src/main/resources/data/superbwarfare/recipe/artillery_indicator_crafting.json rename to src/generated/resources/data/superbwarfare/recipe/artillery_indicator.json index ab7bfb9d4..adcbbbab9 100644 --- a/src/main/resources/data/superbwarfare/recipe/artillery_indicator_crafting.json +++ b/src/generated/resources/data/superbwarfare/recipe/artillery_indicator.json @@ -1,10 +1,6 @@ { "type": "minecraft:crafting_shaped", "category": "misc", - "pattern": [ - " b ", - "aca" - ], "key": { "a": { "item": "minecraft:spyglass" @@ -16,8 +12,12 @@ "item": "superbwarfare:firing_parameters" } }, + "pattern": [ + " b ", + "aca" + ], "result": { - "id": "superbwarfare:artillery_indicator", - "count": 1 + "count": 1, + "id": "superbwarfare:artillery_indicator" } } \ No newline at end of file diff --git a/src/main/resources/data/superbwarfare/recipe/artillery_indicator.json b/src/generated/resources/data/superbwarfare/recipe/artillery_indicator_clear.json similarity index 73% rename from src/main/resources/data/superbwarfare/recipe/artillery_indicator.json rename to src/generated/resources/data/superbwarfare/recipe/artillery_indicator_clear.json index 52405a219..e81c42ecd 100644 --- a/src/main/resources/data/superbwarfare/recipe/artillery_indicator.json +++ b/src/generated/resources/data/superbwarfare/recipe/artillery_indicator_clear.json @@ -7,7 +7,7 @@ } ], "result": { - "id": "superbwarfare:artillery_indicator", - "count": 1 + "count": 1, + "id": "superbwarfare:artillery_indicator" } } \ No newline at end of file diff --git a/src/main/java/com/atsuishio/superbwarfare/datagen/ModRecipeProvider.java b/src/main/java/com/atsuishio/superbwarfare/datagen/ModRecipeProvider.java index f79f2f0f8..54e2c7749 100644 --- a/src/main/java/com/atsuishio/superbwarfare/datagen/ModRecipeProvider.java +++ b/src/main/java/com/atsuishio/superbwarfare/datagen/ModRecipeProvider.java @@ -52,7 +52,19 @@ public class ModRecipeProvider extends RecipeProvider { generateMaterialPackRecipe(writer, ModItems.CEMENTED_CARBIDE_MATERIALS, ModItems.EPIC_MATERIAL_PACK.get()); generateMaterialPackRecipe(writer, ModItems.NETHERITE_MATERIALS, ModItems.LEGENDARY_MATERIAL_PACK.get()); - // 钢管 + ShapedRecipeBuilder.shaped(RecipeCategory.MISC, ModItems.ARTILLERY_INDICATOR.get()) + .pattern(" b ") + .pattern("aca") + .define('a', Items.SPYGLASS) + .define('b', ModItems.MONITOR.get()) + .define('c', ModItems.FIRING_PARAMETERS.get()) + .unlockedBy(getHasName(Items.SPYGLASS), has(Items.SPYGLASS)) + .save(writer, Mod.loc(getItemName(ModItems.ARTILLERY_INDICATOR.get()))); + ShapelessRecipeBuilder.shapeless(RecipeCategory.MISC, ModItems.ARTILLERY_INDICATOR.get()) + .requires(ModItems.ARTILLERY_INDICATOR.get()) + .unlockedBy(getHasName(ModItems.ARTILLERY_INDICATOR.get()), has(ModItems.ARTILLERY_INDICATOR.get())) + .save(writer, Mod.loc(getItemName(ModItems.ARTILLERY_INDICATOR.get()) + "_clear")); + ShapedRecipeBuilder.shaped(RecipeCategory.COMBAT, ModItems.STEEL_PIPE.get()) .pattern(" a") .pattern("a ")