Skip to content

Commit 542a991

Browse files
committed
feat: reorganize item tags and remove fish as valid meat for crafting/sacrificing; add cookie and candy tag to biomancy's sugar tag
1 parent 761da1c commit 542a991

File tree

30 files changed

+530
-357
lines changed

30 files changed

+530
-357
lines changed

src/datagen/java/com/github/elenterius/biomancy/datagen/advancements/BiomancyAdvancementsGenerator.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ private void saveAdvancements(Consumer<Advancement> consumer, ExistingFileHelper
5858
.title("Whispers in the Meat")
5959
.description("You feel a presence in the flesh, faint whispers reach your ears:\n\n \"Raw Meat is useful...\"\n")
6060
.showToast()
61-
.addHasCriterion(ModItemTags.RAW_MEATS)
61+
.addHasCriterion(ModItemTags.FRESH_RAW_MEATS)
6262
.save(consumer, fileHelper);
6363

6464
Advancement meatCollection = createAdvancement("raw_meat_collection").parent(root).icon(Items.PORKCHOP)
@@ -156,7 +156,7 @@ private void saveAdvancements(Consumer<Advancement> consumer, ExistingFileHelper
156156
.title("Tartar Delight")
157157
.description("Serve raw meat to the Primordial Cradle.")
158158
.showToast()
159-
.addCriterion("has_sacrificed_raw_meat", hasSacrificedTag(ModItemTags.RAW_MEATS))
159+
.addCriterion("has_sacrificed_raw_meat", hasSacrificedTag(ModItemTags.FRESH_RAW_MEATS))
160160
.save(consumer, fileHelper);
161161

162162
createAdvancement("cooked_meat_sacrifice").parent(primalCradle).icon(Items.COOKED_BEEF)

src/datagen/java/com/github/elenterius/biomancy/datagen/recipes/DecomposingRecipeProvider.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -222,7 +222,7 @@ private void buildTagRecipes(Consumer<FinishedRecipe> consumer) {
222222
DecomposingRecipeBuilder.create().setIngredient(Tags.Items.SEEDS).addOutput(ModItems.ORGANIC_MATTER.get(), 1, 2).unlockedBy(Tags.Items.SEEDS).save(consumer);
223223

224224
DecomposingRecipeBuilder.create().setIngredient(Tags.Items.BONES).addOutput(ModItems.BONE_FRAGMENTS.get(), 3, 6).unlockedBy(Tags.Items.BONES).save(consumer);
225-
DecomposingRecipeBuilder.create().setIngredient(ModItemTags.FORGE_WITHER_BONES).addOutput(ModItems.BONE_FRAGMENTS.get(), 3, 6).addOutput(ModItems.WITHERING_OOZE.get(), 3, 5).unlockedBy(ModItemTags.FORGE_WITHER_BONES).save(consumer);
225+
DecomposingRecipeBuilder.create().setIngredient(ModItemTags.C_WITHER_BONES).addOutput(ModItems.BONE_FRAGMENTS.get(), 3, 6).addOutput(ModItems.WITHERING_OOZE.get(), 3, 5).unlockedBy(ModItemTags.C_WITHER_BONES).save(consumer);
226226
}
227227

228228
private void build119Recipes(Consumer<FinishedRecipe> consumer) {

src/datagen/java/com/github/elenterius/biomancy/datagen/recipes/VanillaRecipeProvider.java

+9-9
Original file line numberDiff line numberDiff line change
@@ -66,9 +66,9 @@ private void buildPrimaryRecipes(Consumer<FinishedRecipe> consumer) {
6666

6767
WorkbenchRecipeBuilder.shaped(RecipeCategory.COMBAT, ModItems.DESPOIL_SICKLE.get())
6868
.define('B', Tags.Items.BONES)
69-
.define('M', ModItemTags.RAW_MEATS)
70-
.define('F', ModItemTags.FANGS)
71-
.define('C', ModItemTags.CLAWS)
69+
.define('M', ModItemTags.FRESH_RAW_MEATS)
70+
.define('F', ModItemTags.C_FANGS)
71+
.define('C', ModItemTags.C_CLAWS)
7272
.define('P', ModItems.PRIMORDIAL_CORE.get())
7373
.pattern("CB ")
7474
.pattern(" FM")
@@ -87,16 +87,16 @@ private void buildPrimaryRecipes(Consumer<FinishedRecipe> consumer) {
8787

8888
WorkbenchRecipeBuilder.shaped(RecipeCategory.MISC, ModItems.PRIMORDIAL_CRADLE.get())
8989
.define('E', ModItems.PRIMORDIAL_CORE.get())
90-
.define('M', ModItemTags.RAW_MEATS)
91-
.define('F', ModItemTags.FANGS)
90+
.define('M', ModItemTags.FRESH_RAW_MEATS)
91+
.define('F', ModItemTags.C_FANGS)
9292
.pattern("F F")
9393
.pattern("MEM")
9494
.pattern("MMM")
9595
.unlockedBy(ModItems.PRIMORDIAL_CORE.get()).save(consumer);
9696

9797
WorkbenchRecipeBuilder.shaped(RecipeCategory.MISC, ModItems.DECOMPOSER.get())
98-
.define('M', ModItemTags.RAW_MEATS)
99-
.define('F', ModItemTags.FANGS)
98+
.define('M', ModItemTags.FRESH_RAW_MEATS)
99+
.define('F', ModItemTags.C_FANGS)
100100
.define('G', ModItems.GENERIC_MOB_GLAND.get())
101101
.define('E', ModItems.LIVING_FLESH.get())
102102
.pattern("F F")
@@ -106,8 +106,8 @@ private void buildPrimaryRecipes(Consumer<FinishedRecipe> consumer) {
106106

107107
WorkbenchRecipeBuilder.shaped(RecipeCategory.MISC, ModItems.BIO_FORGE.get())
108108
.define('S', Items.SLIME_BALL)
109-
.define('M', ModItemTags.RAW_MEATS)
110-
.define('C', ModItemTags.CLAWS)
109+
.define('M', ModItemTags.FRESH_RAW_MEATS)
110+
.define('C', ModItemTags.C_CLAWS)
111111
.define('E', ModItems.LIVING_FLESH.get())
112112
.pattern("C C")
113113
.pattern("MSM")

src/datagen/java/com/github/elenterius/biomancy/datagen/tags/ModItemTagsProvider.java

+103-62
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,10 @@ private static TagKey<Item> forgeTag(String path) {
3838
return ItemTags.create(new ResourceLocation("forge", path));
3939
}
4040

41+
private static TagKey<Item> conventionalTag(String path) {
42+
return ItemTags.create(new ResourceLocation("c", path));
43+
}
44+
4145
protected EnhancedTagAppender<Item> createTag(TagKey<Item> tag) {
4246
return new EnhancedTagAppender<>(tag(tag), ForgeRegistries.ITEMS);
4347
}
@@ -47,84 +51,29 @@ protected void addTags(HolderLookup.Provider provider) {
4751
addBiomancyTags();
4852
addMinecraftTags();
4953
addForgeTags();
54+
addConventionalTags();
5055
}
5156

5257
private void addBiomancyTags() {
5358
class FarmersDelightItems extends vectorwing.farmersdelight.common.registry.ModItems {} //alias workaround
54-
class AlexsDelightItems extends com.ncpbails.alexsdelight.item.ModItems {} //alias workaround
5559

5660
createTag(ModItemTags.SUGARS)
57-
.add(SUGAR, COOKIE, CAKE, HONEYCOMB, HONEY_BLOCK, HONEYCOMB_BLOCK, HONEY_BOTTLE, SWEET_BERRIES, COCOA_BEANS, APPLE)
61+
.addOptionalTag("c:foods/cookie", "c:foods/candy")
62+
.add(SUGAR, CAKE, HONEYCOMB, HONEY_BLOCK, HONEYCOMB_BLOCK, HONEY_BOTTLE, SWEET_BERRIES, COCOA_BEANS, APPLE)
5863
.add(
59-
FarmersDelightItems.HOT_COCOA.get(), FarmersDelightItems.SWEET_BERRY_COOKIE.get(), FarmersDelightItems.HONEY_COOKIE.get(),
64+
FarmersDelightItems.HOT_COCOA.get(),
6065
FarmersDelightItems.GLOW_BERRY_CUSTARD.get(), FarmersDelightItems.MELON_JUICE.get(),
6166
FarmersDelightItems.CAKE_SLICE.get(), FarmersDelightItems.APPLE_PIE_SLICE.get(), FarmersDelightItems.CHOCOLATE_PIE_SLICE.get(), FarmersDelightItems.SWEET_BERRY_CHEESECAKE_SLICE.get()
6267
)
6368
.addOptional("create:sweet_roll", "create:chocolate_glazed_berries", "create:honeyed_apple", "create:bar_of_chocolate")
6469
.addOptional("createaddition:chocolate_cake");
6570

66-
createTag(ModItemTags.RAW_MEATS)
67-
.add(
68-
BEEF, PORKCHOP, CHICKEN, RABBIT, MUTTON,
69-
COD, SALMON, TROPICAL_FISH, PUFFERFISH
70-
)
71-
.add(
72-
FarmersDelightItems.HAM.get()
73-
)
74-
.add(
75-
AMItemRegistry.MOOSE_RIBS.get(), AMItemRegistry.KANGAROO_MEAT.get(),
76-
AMItemRegistry.FLYING_FISH.get(), AMItemRegistry.RAW_CATFISH.get(), AMItemRegistry.BLOBFISH.get(),
77-
AMItemRegistry.LOBSTER_TAIL.get(), AMItemRegistry.MAGGOT.get()
78-
)
79-
.add(
80-
AlexsDelightItems.RAW_BISON.get(), AlexsDelightItems.BISON_MINCE.get(), AlexsDelightItems.KANGAROO_SHANK.get(), AlexsDelightItems.LOOSE_MOOSE_RIB.get(),
81-
AlexsDelightItems.RAW_BUNFUNGUS.get(), AlexsDelightItems.RAW_BUNFUNGUS_DRUMSTICK.get(), AlexsDelightItems.RAW_CATFISH_SLICE.get()
82-
)
83-
.add(
84-
ACItemRegistry.TRILOCARIS_TAIL.get(), ACItemRegistry.LANTERNFISH.get(), ACItemRegistry.TRIPODFISH.get(), ACItemRegistry.RADGILL.get(),
85-
ACItemRegistry.DEEP_SEA_SUSHI_ROLL.get(),
86-
ACBlockRegistry.DINOSAUR_CHOP.get().asItem()
87-
)
88-
.add(IafItemRegistry.ICE_DRAGON_FLESH.get(), IafItemRegistry.FIRE_DRAGON_FLESH.get(), IafItemRegistry.LIGHTNING_DRAGON_FLESH.get())
89-
.addOptional("createfa:ground_chicken", "createfa:ground_beef")
90-
.addOptional("rats:raw_rat")
91-
.addOptional("circus:clown")
92-
.addOptional("evilcraft:flesh_humanoid", "evilcraft:flesh_werewolf")
93-
.addOptionalTag("forge:raw_fishes", "forge:raw_meats")
94-
.addOptionalTag("forge:raw_bacon", "forge:raw_beef", "forge:raw_chicken", "forge:raw_pork", "forge:raw_mutton")
71+
createTag(ModItemTags.FRESH_RAW_MEATS)
72+
.addOptionalTag("c:foods/raw_meat")
9573
.remove(ROTTEN_FLESH);
9674

9775
createTag(ModItemTags.COOKED_MEATS)
98-
.add(
99-
COOKED_BEEF, COOKED_PORKCHOP, COOKED_CHICKEN, COOKED_RABBIT, COOKED_MUTTON,
100-
COOKED_COD, COOKED_SALMON)
101-
.add(
102-
FarmersDelightItems.SMOKED_HAM.get()
103-
)
104-
.add(
105-
AMItemRegistry.COOKED_MOOSE_RIBS.get(), AMItemRegistry.COOKED_KANGAROO_MEAT.get(),
106-
AMItemRegistry.COOKED_CATFISH.get(), AMItemRegistry.COOKED_LOBSTER_TAIL.get()
107-
)
108-
.add(
109-
AlexsDelightItems.COOKED_BISON.get(), AlexsDelightItems.BISON_PATTY.get(), AlexsDelightItems.COOKED_KANGAROO_SHANK.get(), AlexsDelightItems.COOKED_LOOSE_MOOSE_RIB.get(),
110-
AlexsDelightItems.COOKED_BUNFUNGUS.get(), AlexsDelightItems.COOKED_BUNFUNGUS_DRUMSTICK.get(), AlexsDelightItems.COOKED_CATFISH_SLICE.get(), AlexsDelightItems.COOKED_CENTIPEDE_LEG.get()
111-
)
112-
.add(
113-
ACItemRegistry.COOKED_TRILOCARIS_TAIL.get(), ACItemRegistry.COOKED_LANTERNFISH.get(), ACItemRegistry.COOKED_TRIPODFISH.get(), ACItemRegistry.COOKED_RADGILL.get(),
114-
ACBlockRegistry.COOKED_DINOSAUR_CHOP.get().asItem()
115-
)
116-
.addOptional("createfa:schnitzel", "createfa:meatballs", "createfa:chicken_nuggets")
117-
.addOptional("rats:cooked_rat");
118-
119-
createTag(ModItemTags.CLAWS)
120-
.add(ModItems.MOB_CLAW.get())
121-
.add(AMItemRegistry.DROPBEAR_CLAW.get())
122-
.add(IafItemRegistry.HIPPOGRYPH_TALON.get());
123-
124-
createTag(ModItemTags.FANGS)
125-
.add(ModItems.MOB_FANG.get())
126-
.add(AMItemRegistry.BONE_SERPENT_TOOTH.get())
127-
.add(IafItemRegistry.SERPENT_FANG.get(), IafItemRegistry.HYDRA_FANG.get());
76+
.addOptional("c:foods/cooked_meat");
12877

12978
createTag(ModItemTags.CANNOT_BE_EATEN_BY_CRADLE)
13079
.add(DRAGON_EGG, SPAWNER, HEART_OF_THE_SEA)
@@ -185,6 +134,98 @@ private void addForgeTags() {
185134
}
186135
}
187136

137+
/// uses conventional tags introduced in neo-forge/fabric for minecraft 1.21+
138+
///
139+
/// @see <a href="https://github.com/neoforged/NeoForge/tree/1.21.x/src/generated/resources/data/c/tags/item">NeoForge Repo</a>
140+
private void addConventionalTags() {
141+
class FarmersDelightItems extends vectorwing.farmersdelight.common.registry.ModItems {} //alias workaround
142+
class AlexsDelightItems extends com.ncpbails.alexsdelight.item.ModItems {} //alias workaround
143+
144+
createTag(ModItemTags.C_WITHER_BONES)
145+
.addOptionalTag("forge:bones/wither");
146+
147+
TagKey<Item> forgeClaws = forgeTag("claws");
148+
createTag(forgeClaws).add(ModItems.MOB_CLAW.get());
149+
createTag(ModItemTags.C_CLAWS)
150+
.addTag(forgeClaws)
151+
.add(AMItemRegistry.DROPBEAR_CLAW.get())
152+
.add(IafItemRegistry.HIPPOGRYPH_TALON.get());
153+
154+
TagKey<Item> forgeFangs = forgeTag("fangs");
155+
createTag(forgeFangs).add(ModItems.MOB_FANG.get());
156+
createTag(ModItemTags.C_FANGS)
157+
.addTag(forgeFangs)
158+
.add(AMItemRegistry.BONE_SERPENT_TOOTH.get())
159+
.add(IafItemRegistry.SERPENT_FANG.get(), IafItemRegistry.HYDRA_FANG.get());
160+
161+
createTag(conventionalTag("foods/candy"))
162+
.addOptionalTag("c:foods/candies", "forge:candies", "forge:candy");
163+
164+
createTag(conventionalTag("foods/cookie"))
165+
.addOptionalTag("c:foods/cookies", "forge:cookies", "forge:cookie")
166+
.add(COOKIE)
167+
.add(FarmersDelightItems.SWEET_BERRY_COOKIE.get(), FarmersDelightItems.HONEY_COOKIE.get());
168+
169+
createTag(conventionalTag("foods/raw_meat"))
170+
.addOptionalTag("c:foods/raw_meats", "forge:raw_meats", "forge:raw_meat")
171+
.addOptionalTag("forge:raw_bacon", "forge:raw_beef", "forge:raw_chicken", "forge:raw_pork", "forge:raw_mutton")
172+
.add(BEEF, PORKCHOP, CHICKEN, RABBIT, MUTTON)
173+
.add(FarmersDelightItems.HAM.get())
174+
.add(AMItemRegistry.MOOSE_RIBS.get(), AMItemRegistry.KANGAROO_MEAT.get(), AMItemRegistry.MAGGOT.get())
175+
.add(
176+
AlexsDelightItems.RAW_BISON.get(), AlexsDelightItems.BISON_MINCE.get(), AlexsDelightItems.KANGAROO_SHANK.get(), AlexsDelightItems.LOOSE_MOOSE_RIB.get(),
177+
AlexsDelightItems.RAW_BUNFUNGUS.get(), AlexsDelightItems.RAW_BUNFUNGUS_DRUMSTICK.get()
178+
)
179+
.add(ACBlockRegistry.DINOSAUR_CHOP.get().asItem())
180+
.add(IafItemRegistry.ICE_DRAGON_FLESH.get(), IafItemRegistry.FIRE_DRAGON_FLESH.get(), IafItemRegistry.LIGHTNING_DRAGON_FLESH.get())
181+
.addOptional("createfa:ground_chicken", "createfa:ground_beef")
182+
.addOptional("rats:raw_rat")
183+
.addOptional("circus:clown")
184+
.addOptional("evilcraft:flesh_humanoid", "evilcraft:flesh_werewolf")
185+
;
186+
187+
createTag(conventionalTag("foods/cooked_meat"))
188+
.addOptionalTag("c:foods/cooked_meats", "forge:cooked_meat", "forge:cooked_meats")
189+
.add(COOKED_BEEF, COOKED_PORKCHOP, COOKED_CHICKEN, COOKED_RABBIT, COOKED_MUTTON)
190+
.add(FarmersDelightItems.SMOKED_HAM.get())
191+
.add(AMItemRegistry.COOKED_MOOSE_RIBS.get(), AMItemRegistry.COOKED_KANGAROO_MEAT.get())
192+
.add(
193+
AlexsDelightItems.COOKED_BISON.get(), AlexsDelightItems.BISON_PATTY.get(), AlexsDelightItems.COOKED_KANGAROO_SHANK.get(),
194+
AlexsDelightItems.COOKED_LOOSE_MOOSE_RIB.get(), AlexsDelightItems.COOKED_BUNFUNGUS.get(),
195+
AlexsDelightItems.COOKED_BUNFUNGUS_DRUMSTICK.get(), AlexsDelightItems.COOKED_CENTIPEDE_LEG.get()
196+
)
197+
.add(ACBlockRegistry.COOKED_DINOSAUR_CHOP.get().asItem())
198+
.addOptional("createfa:schnitzel", "createfa:meatballs", "createfa:chicken_nuggets")
199+
.addOptional("rats:cooked_rat")
200+
;
201+
202+
createTag(conventionalTag("foods/raw_fish"))
203+
.addOptionalTag("c:foods/raw_fishes", "forge:raw_fishes", "forge:raw_fish")
204+
.add(COD, SALMON, TROPICAL_FISH, PUFFERFISH)
205+
.add(
206+
AMItemRegistry.FLYING_FISH.get(), AMItemRegistry.RAW_CATFISH.get(), AMItemRegistry.BLOBFISH.get(),
207+
AMItemRegistry.LOBSTER_TAIL.get()
208+
)
209+
.add(
210+
ACItemRegistry.TRILOCARIS_TAIL.get(), ACItemRegistry.LANTERNFISH.get(), ACItemRegistry.TRIPODFISH.get(),
211+
ACItemRegistry.RADGILL.get(),
212+
ACItemRegistry.DEEP_SEA_SUSHI_ROLL.get()
213+
)
214+
.add(AlexsDelightItems.RAW_CATFISH_SLICE.get())
215+
;
216+
217+
createTag(conventionalTag("foods/cooked_fish"))
218+
.addOptionalTag("c:foods/cooked_fishes", "forge:cooked_fishes", "forge:cooked_fish")
219+
.add(COOKED_COD, COOKED_SALMON)
220+
.add(AMItemRegistry.COOKED_CATFISH.get(), AMItemRegistry.COOKED_LOBSTER_TAIL.get())
221+
.add(AlexsDelightItems.COOKED_CATFISH_SLICE.get())
222+
.add(
223+
ACItemRegistry.COOKED_TRILOCARIS_TAIL.get(), ACItemRegistry.COOKED_LANTERNFISH.get(), ACItemRegistry.COOKED_TRIPODFISH.get(),
224+
ACItemRegistry.COOKED_RADGILL.get()
225+
)
226+
;
227+
}
228+
188229
@Override
189230
public String getName() {
190231
return StringUtils.capitalize(modId) + " " + super.getName();

src/generated/resources/data/biomancy/advancements/recipes/biomancy/decomposing/forge_bones_wither.json src/generated/resources/data/biomancy/advancements/recipes/biomancy/decomposing/c_bones_wither.json

+3-3
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,15 @@
55
"conditions": {
66
"items": [
77
{
8-
"tag": "forge:bones/wither"
8+
"tag": "c:bones/wither"
99
}
1010
]
1111
},
1212
"trigger": "minecraft:inventory_changed"
1313
},
1414
"has_the_recipe": {
1515
"conditions": {
16-
"recipe": "biomancy:decomposing/forge_bones_wither"
16+
"recipe": "biomancy:decomposing/c_bones_wither"
1717
},
1818
"trigger": "minecraft:recipe_unlocked"
1919
}
@@ -26,7 +26,7 @@
2626
],
2727
"rewards": {
2828
"recipes": [
29-
"biomancy:decomposing/forge_bones_wither"
29+
"biomancy:decomposing/c_bones_wither"
3030
]
3131
},
3232
"sends_telemetry_event": false

src/generated/resources/data/biomancy/recipes/crafting/bio_forge.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"category": "misc",
44
"key": {
55
"C": {
6-
"tag": "biomancy:claws"
6+
"tag": "c:claws"
77
},
88
"E": {
99
"item": "biomancy:living_flesh"

src/generated/resources/data/biomancy/recipes/crafting/decomposer.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
"item": "biomancy:living_flesh"
77
},
88
"F": {
9-
"tag": "biomancy:fangs"
9+
"tag": "c:fangs"
1010
},
1111
"G": {
1212
"item": "biomancy:mob_gland"

src/generated/resources/data/biomancy/recipes/crafting/despoil_sickle.json

+2-2
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,10 @@
66
"tag": "forge:bones"
77
},
88
"C": {
9-
"tag": "biomancy:claws"
9+
"tag": "c:claws"
1010
},
1111
"F": {
12-
"tag": "biomancy:fangs"
12+
"tag": "c:fangs"
1313
},
1414
"M": {
1515
"tag": "biomancy:raw_meats"

src/generated/resources/data/biomancy/recipes/crafting/primordial_cradle.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
"item": "biomancy:primordial_core"
77
},
88
"F": {
9-
"tag": "biomancy:fangs"
9+
"tag": "c:fangs"
1010
},
1111
"M": {
1212
"tag": "biomancy:raw_meats"

src/generated/resources/data/biomancy/recipes/decomposing/forge_bones_wither.json src/generated/resources/data/biomancy/recipes/decomposing/c_bones_wither.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"type": "biomancy:decomposing",
33
"ingredient": {
4-
"tag": "forge:bones/wither"
4+
"tag": "c:bones/wither"
55
},
66
"nutrientsCost": 1,
77
"processingTime": 275,

0 commit comments

Comments
 (0)