diff --git a/src/generated/resources/assets/anvilcraft/items/capacitor_empty.json b/src/generated/resources/assets/anvilcraft/items/black_chocolate.json similarity index 52% rename from src/generated/resources/assets/anvilcraft/items/capacitor_empty.json rename to src/generated/resources/assets/anvilcraft/items/black_chocolate.json index 51f78bdb1e..ef9a356ada 100644 --- a/src/generated/resources/assets/anvilcraft/items/capacitor_empty.json +++ b/src/generated/resources/assets/anvilcraft/items/black_chocolate.json @@ -1,6 +1,6 @@ { "model": { "type": "minecraft:model", - "model": "anvilcraft:item/capacitor_empty" + "model": "anvilcraft:item/black_chocolate" } } \ No newline at end of file diff --git a/src/generated/resources/assets/anvilcraft/items/chocolate_black.json b/src/generated/resources/assets/anvilcraft/items/empty_capacitor.json similarity index 52% rename from src/generated/resources/assets/anvilcraft/items/chocolate_black.json rename to src/generated/resources/assets/anvilcraft/items/empty_capacitor.json index 4d4e6a3351..880098516f 100644 --- a/src/generated/resources/assets/anvilcraft/items/chocolate_black.json +++ b/src/generated/resources/assets/anvilcraft/items/empty_capacitor.json @@ -1,6 +1,6 @@ { "model": { "type": "minecraft:model", - "model": "anvilcraft:item/chocolate_black" + "model": "anvilcraft:item/empty_capacitor" } } \ No newline at end of file diff --git a/src/generated/resources/assets/anvilcraft/items/empty_supercapacitor.json b/src/generated/resources/assets/anvilcraft/items/empty_supercapacitor.json new file mode 100644 index 0000000000..3cea8c7efb --- /dev/null +++ b/src/generated/resources/assets/anvilcraft/items/empty_supercapacitor.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "anvilcraft:item/empty_supercapacitor" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/anvilcraft/items/supercapacitor_empty.json b/src/generated/resources/assets/anvilcraft/items/supercapacitor_empty.json deleted file mode 100644 index 85b153bfa3..0000000000 --- a/src/generated/resources/assets/anvilcraft/items/supercapacitor_empty.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "model": { - "type": "minecraft:model", - "model": "anvilcraft:item/supercapacitor_empty" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/anvilcraft/items/chocolate_white.json b/src/generated/resources/assets/anvilcraft/items/white_chocolate.json similarity index 52% rename from src/generated/resources/assets/anvilcraft/items/chocolate_white.json rename to src/generated/resources/assets/anvilcraft/items/white_chocolate.json index b1945813db..0c6db8d79f 100644 --- a/src/generated/resources/assets/anvilcraft/items/chocolate_white.json +++ b/src/generated/resources/assets/anvilcraft/items/white_chocolate.json @@ -1,6 +1,6 @@ { "model": { "type": "minecraft:model", - "model": "anvilcraft:item/chocolate_white" + "model": "anvilcraft:item/white_chocolate" } } \ No newline at end of file diff --git a/src/generated/resources/assets/anvilcraft/lang/en_ud.json b/src/generated/resources/assets/anvilcraft/lang/en_ud.json index 8688696c99..723eb1b01d 100644 --- a/src/generated/resources/assets/anvilcraft/lang/en_ud.json +++ b/src/generated/resources/assets/anvilcraft/lang/en_ud.json @@ -1424,6 +1424,7 @@ "item.anvilcraft.armadillo_amulet": "ʇǝꞁnɯⱯ oꞁꞁᴉpɐɯɹⱯ", "item.anvilcraft.beef_mushroom_stew": "ʍǝʇS ɯooɹɥsnW ɟǝǝᗺ", "item.anvilcraft.black_cement_bucket": "ʇǝʞɔnᗺ ʇuǝɯǝƆ ʞɔɐꞁᗺ", + "item.anvilcraft.black_chocolate": "ǝʇɐꞁoɔoɥƆ ʞɔɐꞁᗺ", "item.anvilcraft.blue_cement_bucket": "ʇǝʞɔnᗺ ʇuǝɯǝƆ ǝnꞁᗺ", "item.anvilcraft.brass_ingot": "ʇoᵷuI ssɐɹᗺ", "item.anvilcraft.brass_nugget": "ʇǝᵷᵷnN ssɐɹᗺ", @@ -1440,13 +1441,10 @@ "item.anvilcraft.building_rod.summary": "˙ʞꞁnq uᴉ sʇuᴉɹdǝnꞁq puɐ sʞɔoꞁq ǝɔɐꞁԀ", "item.anvilcraft.canned_food": "pooℲ pǝuuɐƆ", "item.anvilcraft.capacitor": "ɹoʇᴉɔɐdɐƆ", - "item.anvilcraft.capacitor_empty": "ɹoʇᴉɔɐdɐƆ ʎʇdɯƎ", "item.anvilcraft.cat_amulet": "ʇǝꞁnɯⱯ ʇɐƆ", "item.anvilcraft.charged_neutronium_ingot": "ʇoᵷuI ɯnᴉuoɹʇnǝN pǝᵷɹɐɥƆ", "item.anvilcraft.check_valve": "ǝʌꞁɐɅ ʞɔǝɥƆ", "item.anvilcraft.chocolate": "ǝʇɐꞁoɔoɥƆ", - "item.anvilcraft.chocolate_black": "ʞɔɐꞁᗺ ǝʇɐꞁoɔoɥƆ", - "item.anvilcraft.chocolate_white": "ǝʇᴉɥM ǝʇɐꞁoɔoɥƆ", "item.anvilcraft.circuit_board": "pɹɐoᗺ ʇᴉnɔɹᴉƆ", "item.anvilcraft.civilization_catalyst": "ʇsʎꞁɐʇɐƆ uoᴉʇɐzᴉꞁᴉʌᴉƆ", "item.anvilcraft.cocoa_butter": "ɹǝʇʇnᗺ ɐoɔoƆ", @@ -1483,13 +1481,15 @@ "item.anvilcraft.ember_metal_resonator": "ɹoʇɐuosǝᴚ ꞁɐʇǝW ɹǝqɯƎ", "item.anvilcraft.ember_metal_shovel": "ꞁǝʌoɥS ꞁɐʇǝW ɹǝqɯƎ", "item.anvilcraft.ember_metal_sword": "pɹoʍS ꞁɐʇǝW ɹǝqɯƎ", - "item.anvilcraft.ember_metal_upgrade_smithing_template": "ǝʇɐꞁdɯǝ⟘ ᵷuᴉɥʇᴉɯS", + "item.anvilcraft.ember_metal_upgrade_smithing_template": "ǝpɐɹᵷd∩ ꞁɐʇǝW ɹǝqɯƎ", "item.anvilcraft.emerald_amulet": "ʇǝꞁnɯⱯ pꞁɐɹǝɯƎ", + "item.anvilcraft.empty_capacitor": "ɹoʇᴉɔɐdɐƆ ʎʇdɯƎ", + "item.anvilcraft.empty_supercapacitor": "ɹoʇᴉɔɐdɐɔɹǝdnS ʎʇdɯƎ", "item.anvilcraft.enchanted_gold_ingot": "ʇoᵷuI pꞁo⅁ pǝʇuɐɥɔuƎ", "item.anvilcraft.enchanted_gold_nugget": "ʇǝᵷᵷnN pꞁo⅁ pǝʇuɐɥɔuƎ", "item.anvilcraft.energy_weapon_platform": "ɯɹoɟʇɐꞁԀ uodɐǝM ʎᵷɹǝuƎ", "item.anvilcraft.excited_state_void_matter": "ɹǝʇʇɐW pᴉoɅ ǝʇɐʇS pǝʇᴉɔxƎ", - "item.anvilcraft.exp_bucket": "ʇǝʞɔnᗺ dxƎ", + "item.anvilcraft.exp_bucket": "ʇǝʞɔnᗺ ԀXƎ", "item.anvilcraft.exp_gem": "ɯǝ⅁ dxƎ", "item.anvilcraft.feather_amulet": "ʇǝꞁnɯⱯ ɹǝɥʇɐǝℲ", "item.anvilcraft.filter": "ɹǝʇꞁᴉℲ", @@ -1507,7 +1507,7 @@ "item.anvilcraft.frost_metal_resonator": "ɹoʇɐuosǝᴚ ꞁɐʇǝW ʇsoɹℲ", "item.anvilcraft.frost_metal_shovel": "ꞁǝʌoɥS ꞁɐʇǝW ʇsoɹℲ", "item.anvilcraft.frost_metal_sword": "pɹoʍS ꞁɐʇǝW ʇsoɹℲ", - "item.anvilcraft.frost_metal_upgrade_smithing_template": "ǝʇɐꞁdɯǝ⟘ ᵷuᴉɥʇᴉɯS", + "item.anvilcraft.frost_metal_upgrade_smithing_template": "ǝpɐɹᵷd∩ ꞁɐʇǝW ʇsoɹℲ", "item.anvilcraft.gem_amulet": "ʇǝꞁnɯⱯ ɯǝ⅁", "item.anvilcraft.geode": "ǝpoǝ⅁", "item.anvilcraft.geode.find": "%s pǝʇɐɔoꞁ 'ǝpoǝᵷ ʇsʎɥʇǝɯɐ pǝʇɔǝdsnS", @@ -1589,7 +1589,7 @@ "item.anvilcraft.royal_steel_pickaxe": "ǝxɐʞɔᴉԀ ꞁǝǝʇS ꞁɐʎoᴚ", "item.anvilcraft.royal_steel_shovel": "ꞁǝʌoɥS ꞁǝǝʇS ꞁɐʎoᴚ", "item.anvilcraft.royal_steel_sword": "pɹoʍS ꞁǝǝʇS ꞁɐʎoᴚ", - "item.anvilcraft.royal_steel_upgrade_smithing_template": "ǝʇɐꞁdɯǝ⟘ ᵷuᴉɥʇᴉɯS", + "item.anvilcraft.royal_steel_upgrade_smithing_template": "ǝpɐɹᵷd∩ ꞁǝǝʇS ꞁɐʎoᴚ", "item.anvilcraft.ruby": "ʎqnᴚ", "item.anvilcraft.ruby_amulet": "ʇǝꞁnɯⱯ ʎqnᴚ", "item.anvilcraft.sapphire": "ǝɹᴉɥddɐS", @@ -1614,7 +1614,6 @@ "item.anvilcraft.structure_disk.too_large_for_placer": "(ϛ×ϛ×ϛ xɐɯ) ɹǝɔɐꞁԀ ʞɔoꞁᗺ ʇɹɐɯS ɹoɟ ǝᵷɹɐꞁ oo⟘ ✗", "item.anvilcraft.structure_tool": "ꞁoo⟘ ǝɹnʇɔnɹʇS", "item.anvilcraft.supercapacitor": "ɹoʇᴉɔɐdɐɔɹǝdnS", - "item.anvilcraft.supercapacitor_empty": "ɹoʇᴉɔɐdɐɔɹǝdnS ʎʇdɯƎ", "item.anvilcraft.tesla_gun": "un⅁ ɐꞁsǝ⟘", "item.anvilcraft.tin_can": "uɐƆ uᴉ⟘", "item.anvilcraft.tin_ingot": "ʇoᵷuI uᴉ⟘", @@ -1644,6 +1643,7 @@ "item.anvilcraft.weatherproof_spacesuit_helmet": "ʇǝɯꞁǝH ʇᴉnsǝɔɐdS ɟooɹdɹǝɥʇɐǝM", "item.anvilcraft.weatherproof_spacesuit_leggings": "sᵷuᴉᵷᵷǝꞀ ʇᴉnsǝɔɐdS ɟooɹdɹǝɥʇɐǝM", "item.anvilcraft.white_cement_bucket": "ʇǝʞɔnᗺ ʇuǝɯǝƆ ǝʇᴉɥM", + "item.anvilcraft.white_chocolate": "ǝʇɐꞁoɔoɥƆ ǝʇᴉɥM", "item.anvilcraft.wood_fiber": "ɹǝqᴉℲ pooM", "item.anvilcraft.wormhole_stabilizer_component": "ʇuǝuodɯoƆ ɹǝzᴉꞁᴉqɐʇS ǝꞁoɥɯɹoM", "item.anvilcraft.xenon_bucket": "ʇǝʞɔnᗺ uouǝX", @@ -2434,7 +2434,6 @@ "tooltip.anvilcraft.item.cake_block": "ʇᴉ ʇɐǝ oʇ uoods ɐ sɐ ꞁǝʌoɥs ɐ ǝsn 'ǝʞɐɔ ɯɐǝɹɔ ɟo ʞɔoꞁq Ɐ", "tooltip.anvilcraft.item.canned_food": "pooɟ ʇuɐʇsuᴉ ǝꞁqɐʞɔɐʇS", "tooltip.anvilcraft.item.capacitor": "pǝɹoʇs ƎℲW 8", - "tooltip.anvilcraft.item.capacitor_empty": "ʎʇᴉɔɐdɐɔ ƎℲW 8", "tooltip.anvilcraft.item.cat_amulet": "uoᴉʇɔɐɹǝʇuᴉ puɐɥ-ʎʇdɯǝ ǝuo ɥʇᴉʍ sʇɐƆ pꞁᴉʍ ǝɯɐʇ ⸵sɯoʇuɐɥԀ puɐ sɹǝdǝǝɹƆ ʎɐʍɐ sǝɹɐɔS", "tooltip.anvilcraft.item.celestial_forging_anvil": "sǝɹnʇɔnɹʇsɐᵷǝɯ pꞁᴉnq 'sǝᴉpoq ꞁɐᴉʇsǝꞁǝɔ ǝᵷɹoℲ", "tooltip.anvilcraft.item.celestial_forging_anvil.shift": "sꞁᴉɐʇǝp ɹoɟ uoʇʇnq ǝɹnʇɔnɹʇsɐᵷǝɯ ǝɥʇ ʞɔǝɥɔ — sǝsodɹnd ʇuǝɹǝɟɟᴉp ǝʌɹǝs sǝɹnʇɔnɹʇsɐᵷǝɯ ʇuǝɹǝɟɟᴉᗡ\nǝɹnʇɔnɹʇsɐᵷǝɯ ǝɥʇ ʎoɹʇsǝp ꞁꞁᴉʍ ʎpoq ꞁɐᴉʇsǝꞁǝɔ ǝɥʇ ᵷuᴉʞɔoꞁu∩\nǝɹnʇɔnɹʇsɐᵷǝɯ ɐ pꞁᴉnq oʇ ʇᴉ ʞɔoꞁ 'punoɟ sᴉ ʎpoq ꞁɐᴉʇsǝꞁǝɔ ǝꞁqɐʇᴉns ɐ ǝɔuO\nsɹǝʇǝɯɐɹɐd ꞁɐᴉʇsǝꞁǝɔ ǝuᴉɯɹǝʇǝp oʇ ꞁᴉʌuɐ uɐ ǝɔɐꞁԀ", @@ -2530,6 +2529,8 @@ "tooltip.anvilcraft.item.ember_metal_nugget": "suoǝ ɹoɟ ǝɹᴉɟ uᴉ pǝɹǝdɯǝʇ ǝʇᴉɹǝɥʇǝN ʇuɐʇsᴉsǝɹ-ʇɐǝɥ ɟo ǝɔǝᴉd ꞁꞁɐɯs Ɐ", "tooltip.anvilcraft.item.ember_smithing_table": "ɟooɹd ɹǝɥʇᴉM 'ᵷuᴉɥʇᴉɯs uoᴉʇɐuᴉqɯoɔ ǝuo-uᴉ-ꞁꞁⱯ", "tooltip.anvilcraft.item.emerald_amulet": "ɹǝɹɐǝʍ ǝɥʇ oʇ ǝꞁᴉʇsoɥ ǝɯoɔǝq ɹǝʌǝu sɯǝꞁo⅁ uoɹI ⸵sʇunoɔsᴉp ɹǝɟɟo sɹǝᵷɐꞁꞁᴉɅ", + "tooltip.anvilcraft.item.empty_capacitor": "ʎʇᴉɔɐdɐɔ ƎℲW 8", + "tooltip.anvilcraft.item.empty_supercapacitor": "ʎʇᴉɔɐdɐɔ ƎℲW 09⥝", "tooltip.anvilcraft.item.enchanted_gold_block": "sɟɟnqǝp pꞁoᵷ pǝsɹnɔ sꞁǝɔuɐɔ pꞁoᵷ pǝʇuɐɥɔuǝ ᵷuᴉʎɹɹɐƆ", "tooltip.anvilcraft.item.enchanted_gold_ingot": "sǝɯᴉʇ ɹnoɟ ʇᴉ ɥʇᴉʍ ɹǝʇɹɐq suᴉꞁᵷᴉԀ\nsɟɟnqǝp pꞁoᵷ pǝsɹnɔ sꞁǝɔuɐɔ pꞁoᵷ pǝʇuɐɥɔuǝ ᵷuᴉʎɹɹɐƆ", "tooltip.anvilcraft.item.enchanted_gold_nugget": "sɟɟnqǝp pꞁoᵷ pǝsɹnɔ sꞁǝɔuɐɔ pꞁoᵷ pǝʇuɐɥɔuǝ ᵷuᴉʎɹɹɐƆ", @@ -2728,7 +2729,6 @@ "tooltip.anvilcraft.item.structure_tool.size": "%3$d :z '%2$d :ʎ '%1$d :x :ǝzᴉS", "tooltip.anvilcraft.item.sugar_block": "ǝꞁᴉᵷɐɹɟ sɯǝǝs ʇnq 'ꞁɐʇsʎɹɔ ɔᴉɹʇɔǝꞁǝozǝᴉd ɐ osꞁⱯ\nɹɐᵷns ɟo ʞɔoꞁq ǝᵷɹɐꞁ Ɐ", "tooltip.anvilcraft.item.supercapacitor": "pǝɹoʇs ƎℲW 09⥝", - "tooltip.anvilcraft.item.supercapacitor_empty": "ʎʇᴉɔɐdɐɔ ƎℲW 09⥝", "tooltip.anvilcraft.item.tempering_glass": "ʇɔǝꞁꞁoɔ uo pǝɹᴉnbǝɹ sꞁooʇ oN 'ɟooɹd uoᴉsoꞁdxƎ 'ssɐꞁᵷ ꞁǝǝʇS ꞁɐʎoᴚ", "tooltip.anvilcraft.item.tesla_gun": "sqoɯ uǝǝʍʇǝq sǝɔunoq ʇɐɥʇ ᵷuᴉuʇɥᵷᴉꞁ uᴉɐɥɔ ǝɹᴉɟ puɐ ɹǝʍod ǝɯnsuoɔ oʇ ʞɔᴉꞁɔ-ʇɥᵷᴉɹ pꞁoH", "tooltip.anvilcraft.item.tesla_gun.shift": "un⅁ ɐꞁsǝ⟘ ǝɥʇ ᵷuᴉʇuɐɥɔuǝ ʎq pǝuǝʇɹoɥs ǝq uɐɔ ɥɔᴉɥʍ 'uʍopꞁooɔ ɐ ʎq pǝʍoꞁꞁoɟ sᴉ ǝʞᴉɹʇs ɥɔɐƎ\npǝʇǝᵷɹɐʇ ǝq osꞁɐ ꞁꞁᴉʍ spoɹ ᵷuᴉuʇɥᵷᴉꞁ puɐ 'sqoɯ ʇɹǝʌuoɔ uɐɔ ᵷuᴉuʇɥᵷᴉꞁ ǝɥ⟘\nǝɔunoq ɥɔɐǝ ɥʇᴉʍ ǝᵷɐɯɐp pǝɔnpǝɹ ᵷuᴉꞁɐǝp 'sqoɯ ߈ oʇ dn uǝǝʍʇǝq sɔɹɐ ʇɐɥʇ ᵷuᴉuʇɥᵷᴉꞁ uᴉɐɥɔ sǝɹᴉℲ", diff --git a/src/generated/resources/assets/anvilcraft/lang/en_us.json b/src/generated/resources/assets/anvilcraft/lang/en_us.json index b08798d7f5..3af95608a9 100644 --- a/src/generated/resources/assets/anvilcraft/lang/en_us.json +++ b/src/generated/resources/assets/anvilcraft/lang/en_us.json @@ -1424,6 +1424,7 @@ "item.anvilcraft.armadillo_amulet": "Armadillo Amulet", "item.anvilcraft.beef_mushroom_stew": "Beef Mushroom Stew", "item.anvilcraft.black_cement_bucket": "Black Cement Bucket", + "item.anvilcraft.black_chocolate": "Black Chocolate", "item.anvilcraft.blue_cement_bucket": "Blue Cement Bucket", "item.anvilcraft.brass_ingot": "Brass Ingot", "item.anvilcraft.brass_nugget": "Brass Nugget", @@ -1440,13 +1441,10 @@ "item.anvilcraft.building_rod.summary": "Place blocks and blueprints in bulk.", "item.anvilcraft.canned_food": "Canned Food", "item.anvilcraft.capacitor": "Capacitor", - "item.anvilcraft.capacitor_empty": "Empty Capacitor", "item.anvilcraft.cat_amulet": "Cat Amulet", "item.anvilcraft.charged_neutronium_ingot": "Charged Neutronium Ingot", "item.anvilcraft.check_valve": "Check Valve", "item.anvilcraft.chocolate": "Chocolate", - "item.anvilcraft.chocolate_black": "Chocolate Black", - "item.anvilcraft.chocolate_white": "Chocolate White", "item.anvilcraft.circuit_board": "Circuit Board", "item.anvilcraft.civilization_catalyst": "Civilization Catalyst", "item.anvilcraft.cocoa_butter": "Cocoa Butter", @@ -1483,13 +1481,15 @@ "item.anvilcraft.ember_metal_resonator": "Ember Metal Resonator", "item.anvilcraft.ember_metal_shovel": "Ember Metal Shovel", "item.anvilcraft.ember_metal_sword": "Ember Metal Sword", - "item.anvilcraft.ember_metal_upgrade_smithing_template": "Smithing Template", + "item.anvilcraft.ember_metal_upgrade_smithing_template": "Ember Metal Upgrade", "item.anvilcraft.emerald_amulet": "Emerald Amulet", + "item.anvilcraft.empty_capacitor": "Empty Capacitor", + "item.anvilcraft.empty_supercapacitor": "Empty Supercapacitor", "item.anvilcraft.enchanted_gold_ingot": "Enchanted Gold Ingot", "item.anvilcraft.enchanted_gold_nugget": "Enchanted Gold Nugget", "item.anvilcraft.energy_weapon_platform": "Energy Weapon Platform", "item.anvilcraft.excited_state_void_matter": "Excited State Void Matter", - "item.anvilcraft.exp_bucket": "Exp Bucket", + "item.anvilcraft.exp_bucket": "EXP Bucket", "item.anvilcraft.exp_gem": "Exp Gem", "item.anvilcraft.feather_amulet": "Feather Amulet", "item.anvilcraft.filter": "Filter", @@ -1507,7 +1507,7 @@ "item.anvilcraft.frost_metal_resonator": "Frost Metal Resonator", "item.anvilcraft.frost_metal_shovel": "Frost Metal Shovel", "item.anvilcraft.frost_metal_sword": "Frost Metal Sword", - "item.anvilcraft.frost_metal_upgrade_smithing_template": "Smithing Template", + "item.anvilcraft.frost_metal_upgrade_smithing_template": "Frost Metal Upgrade", "item.anvilcraft.gem_amulet": "Gem Amulet", "item.anvilcraft.geode": "Geode", "item.anvilcraft.geode.find": "Suspected amethyst geode, located %s", @@ -1589,7 +1589,7 @@ "item.anvilcraft.royal_steel_pickaxe": "Royal Steel Pickaxe", "item.anvilcraft.royal_steel_shovel": "Royal Steel Shovel", "item.anvilcraft.royal_steel_sword": "Royal Steel Sword", - "item.anvilcraft.royal_steel_upgrade_smithing_template": "Smithing Template", + "item.anvilcraft.royal_steel_upgrade_smithing_template": "Royal Steel Upgrade", "item.anvilcraft.ruby": "Ruby", "item.anvilcraft.ruby_amulet": "Ruby Amulet", "item.anvilcraft.sapphire": "Sapphire", @@ -1614,7 +1614,6 @@ "item.anvilcraft.structure_disk.too_large_for_placer": "✗ Too large for Smart Block Placer (max 5×5×5)", "item.anvilcraft.structure_tool": "Structure Tool", "item.anvilcraft.supercapacitor": "Supercapacitor", - "item.anvilcraft.supercapacitor_empty": "Empty Supercapacitor", "item.anvilcraft.tesla_gun": "Tesla Gun", "item.anvilcraft.tin_can": "Tin Can", "item.anvilcraft.tin_ingot": "Tin Ingot", @@ -1644,6 +1643,7 @@ "item.anvilcraft.weatherproof_spacesuit_helmet": "Weatherproof Spacesuit Helmet", "item.anvilcraft.weatherproof_spacesuit_leggings": "Weatherproof Spacesuit Leggings", "item.anvilcraft.white_cement_bucket": "White Cement Bucket", + "item.anvilcraft.white_chocolate": "White Chocolate", "item.anvilcraft.wood_fiber": "Wood Fiber", "item.anvilcraft.wormhole_stabilizer_component": "Wormhole Stabilizer Component", "item.anvilcraft.xenon_bucket": "Xenon Bucket", @@ -2434,7 +2434,6 @@ "tooltip.anvilcraft.item.cake_block": "A block of cream cake, use a shovel as a spoon to eat it", "tooltip.anvilcraft.item.canned_food": "Stackable instant food", "tooltip.anvilcraft.item.capacitor": "8 MFE stored", - "tooltip.anvilcraft.item.capacitor_empty": "8 MFE capacity", "tooltip.anvilcraft.item.cat_amulet": "Scares away Creepers and Phantoms; tame wild Cats with one empty-hand interaction", "tooltip.anvilcraft.item.celestial_forging_anvil": "Forge celestial bodies, build megastructures", "tooltip.anvilcraft.item.celestial_forging_anvil.shift": "Place an anvil to determine celestial parameters\nOnce a suitable celestial body is found, lock it to build a megastructure\nUnlocking the celestial body will destroy the megastructure\nDifferent megastructures serve different purposes — check the megastructure button for details", @@ -2530,6 +2529,8 @@ "tooltip.anvilcraft.item.ember_metal_nugget": "A small piece of heat-resistant Netherite tempered in fire for eons", "tooltip.anvilcraft.item.ember_smithing_table": "All-in-one combination smithing, Wither proof", "tooltip.anvilcraft.item.emerald_amulet": "Villagers offer discounts; Iron Golems never become hostile to the wearer", + "tooltip.anvilcraft.item.empty_capacitor": "8 MFE capacity", + "tooltip.anvilcraft.item.empty_supercapacitor": "160 MFE capacity", "tooltip.anvilcraft.item.enchanted_gold_block": "Carrying enchanted gold cancels cursed gold debuffs", "tooltip.anvilcraft.item.enchanted_gold_ingot": "Carrying enchanted gold cancels cursed gold debuffs\nPiglins barter with it four times", "tooltip.anvilcraft.item.enchanted_gold_nugget": "Carrying enchanted gold cancels cursed gold debuffs", @@ -2728,7 +2729,6 @@ "tooltip.anvilcraft.item.structure_tool.size": "Size: x: %1$d, y: %2$d, z: %3$d", "tooltip.anvilcraft.item.sugar_block": "A large block of sugar\nAlso a piezoelectric crystal, but seems fragile", "tooltip.anvilcraft.item.supercapacitor": "160 MFE stored", - "tooltip.anvilcraft.item.supercapacitor_empty": "160 MFE capacity", "tooltip.anvilcraft.item.tempering_glass": "Royal Steel glass, Explosion proof, No tools required on collect", "tooltip.anvilcraft.item.tesla_gun": "Hold right-click to consume power and fire chain lightning that bounces between mobs", "tooltip.anvilcraft.item.tesla_gun.shift": "Fires chain lightning that arcs between up to 4 mobs, dealing reduced damage with each bounce\nThe lightning can convert mobs, and lightning rods will also be targeted\nEach strike is followed by a cooldown, which can be shortened by enchanting the Tesla Gun", diff --git a/src/generated/resources/assets/anvilcraft/models/item/chocolate_black.json b/src/generated/resources/assets/anvilcraft/models/item/black_chocolate.json similarity index 56% rename from src/generated/resources/assets/anvilcraft/models/item/chocolate_black.json rename to src/generated/resources/assets/anvilcraft/models/item/black_chocolate.json index d72be5d613..c0f65fd7a3 100644 --- a/src/generated/resources/assets/anvilcraft/models/item/chocolate_black.json +++ b/src/generated/resources/assets/anvilcraft/models/item/black_chocolate.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "anvilcraft:item/chocolate_black" + "layer0": "anvilcraft:item/black_chocolate" } } \ No newline at end of file diff --git a/src/generated/resources/assets/anvilcraft/models/item/chocolate_white.json b/src/generated/resources/assets/anvilcraft/models/item/white_chocolate.json similarity index 56% rename from src/generated/resources/assets/anvilcraft/models/item/chocolate_white.json rename to src/generated/resources/assets/anvilcraft/models/item/white_chocolate.json index 347ac83181..a76035086d 100644 --- a/src/generated/resources/assets/anvilcraft/models/item/chocolate_white.json +++ b/src/generated/resources/assets/anvilcraft/models/item/white_chocolate.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "anvilcraft:item/chocolate_white" + "layer0": "anvilcraft:item/white_chocolate" } } \ No newline at end of file diff --git a/src/generated/resources/data/anvilcraft/advancement/recipes/building_blocks/black_chocolate_block.json b/src/generated/resources/data/anvilcraft/advancement/recipes/building_blocks/black_chocolate_block.json index 945cbb5c5f..f3c4d0c656 100644 --- a/src/generated/resources/data/anvilcraft/advancement/recipes/building_blocks/black_chocolate_block.json +++ b/src/generated/resources/data/anvilcraft/advancement/recipes/building_blocks/black_chocolate_block.json @@ -1,11 +1,11 @@ { "parent": "minecraft:recipes/root", "criteria": { - "has_chocolate_black": { + "has_black_chocolate": { "conditions": { "items": [ { - "items": "anvilcraft:chocolate_black" + "items": "anvilcraft:black_chocolate" } ] }, @@ -21,7 +21,7 @@ "requirements": [ [ "has_the_recipe", - "has_chocolate_black" + "has_black_chocolate" ] ], "rewards": { diff --git a/src/generated/resources/data/anvilcraft/advancement/recipes/building_blocks/white_chocolate_block.json b/src/generated/resources/data/anvilcraft/advancement/recipes/building_blocks/white_chocolate_block.json index 33eef4dd86..fe55e7b7b7 100644 --- a/src/generated/resources/data/anvilcraft/advancement/recipes/building_blocks/white_chocolate_block.json +++ b/src/generated/resources/data/anvilcraft/advancement/recipes/building_blocks/white_chocolate_block.json @@ -1,27 +1,27 @@ { "parent": "minecraft:recipes/root", "criteria": { - "has_chocolate_white": { + "has_the_recipe": { + "conditions": { + "recipe": "anvilcraft:white_chocolate_block" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "has_white_chocolate": { "conditions": { "items": [ { - "items": "anvilcraft:chocolate_white" + "items": "anvilcraft:white_chocolate" } ] }, "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "anvilcraft:white_chocolate_block" - }, - "trigger": "minecraft:recipe_unlocked" } }, "requirements": [ [ "has_the_recipe", - "has_chocolate_white" + "has_white_chocolate" ] ], "rewards": { diff --git a/src/generated/resources/data/anvilcraft/advancement/recipes/charger_charging/capacitor_empty.json b/src/generated/resources/data/anvilcraft/advancement/recipes/charger_charging/empty_capacitor.json similarity index 69% rename from src/generated/resources/data/anvilcraft/advancement/recipes/charger_charging/capacitor_empty.json rename to src/generated/resources/data/anvilcraft/advancement/recipes/charger_charging/empty_capacitor.json index 68a6839537..192c5373bc 100644 --- a/src/generated/resources/data/anvilcraft/advancement/recipes/charger_charging/capacitor_empty.json +++ b/src/generated/resources/data/anvilcraft/advancement/recipes/charger_charging/empty_capacitor.json @@ -3,7 +3,7 @@ "criteria": { "has_the_recipe": { "conditions": { - "recipe": "anvilcraft:charger_charging/capacitor_empty" + "recipe": "anvilcraft:charger_charging/empty_capacitor" }, "trigger": "minecraft:recipe_unlocked" } @@ -15,7 +15,7 @@ ], "rewards": { "recipes": [ - "anvilcraft:charger_charging/capacitor_empty" + "anvilcraft:charger_charging/empty_capacitor" ] } } \ No newline at end of file diff --git a/src/generated/resources/data/anvilcraft/advancement/recipes/charger_charging/supercapacitor_empty.json b/src/generated/resources/data/anvilcraft/advancement/recipes/charger_charging/empty_supercapacitor.json similarity index 68% rename from src/generated/resources/data/anvilcraft/advancement/recipes/charger_charging/supercapacitor_empty.json rename to src/generated/resources/data/anvilcraft/advancement/recipes/charger_charging/empty_supercapacitor.json index 63381622b5..d06201230c 100644 --- a/src/generated/resources/data/anvilcraft/advancement/recipes/charger_charging/supercapacitor_empty.json +++ b/src/generated/resources/data/anvilcraft/advancement/recipes/charger_charging/empty_supercapacitor.json @@ -3,7 +3,7 @@ "criteria": { "has_the_recipe": { "conditions": { - "recipe": "anvilcraft:charger_charging/supercapacitor_empty" + "recipe": "anvilcraft:charger_charging/empty_supercapacitor" }, "trigger": "minecraft:recipe_unlocked" } @@ -15,7 +15,7 @@ ], "rewards": { "recipes": [ - "anvilcraft:charger_charging/supercapacitor_empty" + "anvilcraft:charger_charging/empty_supercapacitor" ] } } \ No newline at end of file diff --git a/src/generated/resources/data/anvilcraft/advancement/recipes/food/chocolate_black.json b/src/generated/resources/data/anvilcraft/advancement/recipes/food/black_chocolate.json similarity index 91% rename from src/generated/resources/data/anvilcraft/advancement/recipes/food/chocolate_black.json rename to src/generated/resources/data/anvilcraft/advancement/recipes/food/black_chocolate.json index 06d69b7839..e62208792c 100644 --- a/src/generated/resources/data/anvilcraft/advancement/recipes/food/chocolate_black.json +++ b/src/generated/resources/data/anvilcraft/advancement/recipes/food/black_chocolate.json @@ -33,7 +33,7 @@ }, "has_the_recipe": { "conditions": { - "recipe": "anvilcraft:chocolate_black" + "recipe": "anvilcraft:black_chocolate" }, "trigger": "minecraft:recipe_unlocked" } @@ -48,7 +48,7 @@ ], "rewards": { "recipes": [ - "anvilcraft:chocolate_black" + "anvilcraft:black_chocolate" ] } } \ No newline at end of file diff --git a/src/generated/resources/data/anvilcraft/advancement/recipes/food/chocolate_white.json b/src/generated/resources/data/anvilcraft/advancement/recipes/food/white_chocolate.json similarity index 91% rename from src/generated/resources/data/anvilcraft/advancement/recipes/food/chocolate_white.json rename to src/generated/resources/data/anvilcraft/advancement/recipes/food/white_chocolate.json index 29ad352511..16ae5e448f 100644 --- a/src/generated/resources/data/anvilcraft/advancement/recipes/food/chocolate_white.json +++ b/src/generated/resources/data/anvilcraft/advancement/recipes/food/white_chocolate.json @@ -33,7 +33,7 @@ }, "has_the_recipe": { "conditions": { - "recipe": "anvilcraft:chocolate_white" + "recipe": "anvilcraft:white_chocolate" }, "trigger": "minecraft:recipe_unlocked" } @@ -48,7 +48,7 @@ ], "rewards": { "recipes": [ - "anvilcraft:chocolate_white" + "anvilcraft:white_chocolate" ] } } \ No newline at end of file diff --git a/src/generated/resources/data/anvilcraft/advancement/recipes/item_compress/supercapacitor_empty.json b/src/generated/resources/data/anvilcraft/advancement/recipes/item_compress/empty_supercapacitor.json similarity index 69% rename from src/generated/resources/data/anvilcraft/advancement/recipes/item_compress/supercapacitor_empty.json rename to src/generated/resources/data/anvilcraft/advancement/recipes/item_compress/empty_supercapacitor.json index bc9d2a64a3..9f6f2a4aab 100644 --- a/src/generated/resources/data/anvilcraft/advancement/recipes/item_compress/supercapacitor_empty.json +++ b/src/generated/resources/data/anvilcraft/advancement/recipes/item_compress/empty_supercapacitor.json @@ -3,7 +3,7 @@ "criteria": { "has_the_recipe": { "conditions": { - "recipe": "anvilcraft:item_compress/supercapacitor_empty" + "recipe": "anvilcraft:item_compress/empty_supercapacitor" }, "trigger": "minecraft:recipe_unlocked" } @@ -15,7 +15,7 @@ ], "rewards": { "recipes": [ - "anvilcraft:item_compress/supercapacitor_empty" + "anvilcraft:item_compress/empty_supercapacitor" ] } } \ No newline at end of file diff --git a/src/generated/resources/data/anvilcraft/advancement/recipes/misc/capacitor_empty.json b/src/generated/resources/data/anvilcraft/advancement/recipes/misc/empty_capacitor.json similarity index 89% rename from src/generated/resources/data/anvilcraft/advancement/recipes/misc/capacitor_empty.json rename to src/generated/resources/data/anvilcraft/advancement/recipes/misc/empty_capacitor.json index bd9f18356a..b924373edb 100644 --- a/src/generated/resources/data/anvilcraft/advancement/recipes/misc/capacitor_empty.json +++ b/src/generated/resources/data/anvilcraft/advancement/recipes/misc/empty_capacitor.json @@ -23,7 +23,7 @@ }, "has_the_recipe": { "conditions": { - "recipe": "anvilcraft:capacitor_empty" + "recipe": "anvilcraft:empty_capacitor" }, "trigger": "minecraft:recipe_unlocked" } @@ -37,7 +37,7 @@ ], "rewards": { "recipes": [ - "anvilcraft:capacitor_empty" + "anvilcraft:empty_capacitor" ] } } \ No newline at end of file diff --git a/src/generated/resources/data/anvilcraft/recipe/chocolate_black.json b/src/generated/resources/data/anvilcraft/recipe/black_chocolate.json similarity index 87% rename from src/generated/resources/data/anvilcraft/recipe/chocolate_black.json rename to src/generated/resources/data/anvilcraft/recipe/black_chocolate.json index 1c88fa69b6..90877e8711 100644 --- a/src/generated/resources/data/anvilcraft/recipe/chocolate_black.json +++ b/src/generated/resources/data/anvilcraft/recipe/black_chocolate.json @@ -13,6 +13,6 @@ ], "result": { "count": 4, - "id": "anvilcraft:chocolate_black" + "id": "anvilcraft:black_chocolate" } } \ No newline at end of file diff --git a/src/generated/resources/data/anvilcraft/recipe/black_chocolate_block.json b/src/generated/resources/data/anvilcraft/recipe/black_chocolate_block.json index fcd0749a50..95951811b5 100644 --- a/src/generated/resources/data/anvilcraft/recipe/black_chocolate_block.json +++ b/src/generated/resources/data/anvilcraft/recipe/black_chocolate_block.json @@ -2,7 +2,7 @@ "type": "minecraft:crafting_shaped", "category": "building", "key": { - "A": "anvilcraft:chocolate_black" + "A": "anvilcraft:black_chocolate" }, "pattern": [ "AAA", diff --git a/src/generated/resources/data/anvilcraft/recipe/black_chocolate_from_block.json b/src/generated/resources/data/anvilcraft/recipe/black_chocolate_from_block.json index 025202209b..5522334f81 100644 --- a/src/generated/resources/data/anvilcraft/recipe/black_chocolate_from_block.json +++ b/src/generated/resources/data/anvilcraft/recipe/black_chocolate_from_block.json @@ -6,6 +6,6 @@ ], "result": { "count": 9, - "id": "anvilcraft:chocolate_black" + "id": "anvilcraft:black_chocolate" } } \ No newline at end of file diff --git a/src/generated/resources/data/anvilcraft/recipe/building_rod.json b/src/generated/resources/data/anvilcraft/recipe/building_rod.json index 5183ff5cb7..6101e3f793 100644 --- a/src/generated/resources/data/anvilcraft/recipe/building_rod.json +++ b/src/generated/resources/data/anvilcraft/recipe/building_rod.json @@ -5,7 +5,7 @@ "A": "anvilcraft:smart_block_placer", "B": "anvilcraft:magnetoelectric_core", "C": "anvilcraft:anvil_hammer", - "D": "anvilcraft:capacitor_empty" + "D": "anvilcraft:empty_capacitor" }, "pattern": [ "ABA", diff --git a/src/generated/resources/data/anvilcraft/recipe/charger_charging/capacitor.json b/src/generated/resources/data/anvilcraft/recipe/charger_charging/capacitor.json index 2e5c1b1ac8..4005b2d028 100644 --- a/src/generated/resources/data/anvilcraft/recipe/charger_charging/capacitor.json +++ b/src/generated/resources/data/anvilcraft/recipe/charger_charging/capacitor.json @@ -1,6 +1,6 @@ { "type": "anvilcraft:charger_charging", - "ingredient": "anvilcraft:capacitor_empty", + "ingredient": "anvilcraft:empty_capacitor", "power": -70, "result": { "id": "anvilcraft:capacitor" diff --git a/src/generated/resources/data/anvilcraft/recipe/charger_charging/capacitor_empty.json b/src/generated/resources/data/anvilcraft/recipe/charger_charging/empty_capacitor.json similarity index 77% rename from src/generated/resources/data/anvilcraft/recipe/charger_charging/capacitor_empty.json rename to src/generated/resources/data/anvilcraft/recipe/charger_charging/empty_capacitor.json index afbf4f5264..b8b7c69a74 100644 --- a/src/generated/resources/data/anvilcraft/recipe/charger_charging/capacitor_empty.json +++ b/src/generated/resources/data/anvilcraft/recipe/charger_charging/empty_capacitor.json @@ -3,7 +3,7 @@ "ingredient": "anvilcraft:capacitor", "power": 64, "result": { - "id": "anvilcraft:capacitor_empty" + "id": "anvilcraft:empty_capacitor" }, "time": 1200 } \ No newline at end of file diff --git a/src/generated/resources/data/anvilcraft/recipe/charger_charging/supercapacitor_empty.json b/src/generated/resources/data/anvilcraft/recipe/charger_charging/empty_supercapacitor.json similarity index 75% rename from src/generated/resources/data/anvilcraft/recipe/charger_charging/supercapacitor_empty.json rename to src/generated/resources/data/anvilcraft/recipe/charger_charging/empty_supercapacitor.json index 0da7cad491..69c0d00b50 100644 --- a/src/generated/resources/data/anvilcraft/recipe/charger_charging/supercapacitor_empty.json +++ b/src/generated/resources/data/anvilcraft/recipe/charger_charging/empty_supercapacitor.json @@ -3,7 +3,7 @@ "ingredient": "anvilcraft:supercapacitor", "power": 640, "result": { - "id": "anvilcraft:supercapacitor_empty" + "id": "anvilcraft:empty_supercapacitor" }, "time": 2400 } \ No newline at end of file diff --git a/src/generated/resources/data/anvilcraft/recipe/charger_charging/supercapacitor.json b/src/generated/resources/data/anvilcraft/recipe/charger_charging/supercapacitor.json index 3b4d6472ad..5b4485ed85 100644 --- a/src/generated/resources/data/anvilcraft/recipe/charger_charging/supercapacitor.json +++ b/src/generated/resources/data/anvilcraft/recipe/charger_charging/supercapacitor.json @@ -1,6 +1,6 @@ { "type": "anvilcraft:charger_charging", - "ingredient": "anvilcraft:supercapacitor_empty", + "ingredient": "anvilcraft:empty_supercapacitor", "power": -700, "result": { "id": "anvilcraft:supercapacitor" diff --git a/src/generated/resources/data/anvilcraft/recipe/capacitor_empty.json b/src/generated/resources/data/anvilcraft/recipe/empty_capacitor.json similarity index 83% rename from src/generated/resources/data/anvilcraft/recipe/capacitor_empty.json rename to src/generated/resources/data/anvilcraft/recipe/empty_capacitor.json index 352ebb8e54..6af6b1a593 100644 --- a/src/generated/resources/data/anvilcraft/recipe/capacitor_empty.json +++ b/src/generated/resources/data/anvilcraft/recipe/empty_capacitor.json @@ -11,6 +11,6 @@ "A" ], "result": { - "id": "anvilcraft:capacitor_empty" + "id": "anvilcraft:empty_capacitor" } } \ No newline at end of file diff --git a/src/generated/resources/data/anvilcraft/recipe/empty_propel_piston.json b/src/generated/resources/data/anvilcraft/recipe/empty_propel_piston.json index 9d023e1890..fee40d5e6a 100644 --- a/src/generated/resources/data/anvilcraft/recipe/empty_propel_piston.json +++ b/src/generated/resources/data/anvilcraft/recipe/empty_propel_piston.json @@ -3,7 +3,7 @@ "category": "redstone", "key": { "A": "anvilcraft:ionocraft", - "B": "anvilcraft:capacitor_empty", + "B": "anvilcraft:empty_capacitor", "C": "minecraft:iron_ingot", "D": "minecraft:piston", "E": "anvilcraft:ruby" diff --git a/src/generated/resources/data/anvilcraft/recipe/item_compress/supercapacitor_empty.json b/src/generated/resources/data/anvilcraft/recipe/item_compress/empty_supercapacitor.json similarity index 94% rename from src/generated/resources/data/anvilcraft/recipe/item_compress/supercapacitor_empty.json rename to src/generated/resources/data/anvilcraft/recipe/item_compress/empty_supercapacitor.json index 14f6b83380..7437582b58 100644 --- a/src/generated/resources/data/anvilcraft/recipe/item_compress/supercapacitor_empty.json +++ b/src/generated/resources/data/anvilcraft/recipe/item_compress/empty_supercapacitor.json @@ -34,7 +34,7 @@ ], "results": [ { - "id": "anvilcraft:supercapacitor_empty" + "id": "anvilcraft:empty_supercapacitor" } ] } \ No newline at end of file diff --git a/src/generated/resources/data/anvilcraft/recipe/chocolate_white.json b/src/generated/resources/data/anvilcraft/recipe/white_chocolate.json similarity index 86% rename from src/generated/resources/data/anvilcraft/recipe/chocolate_white.json rename to src/generated/resources/data/anvilcraft/recipe/white_chocolate.json index b6b7953704..1b10b02414 100644 --- a/src/generated/resources/data/anvilcraft/recipe/chocolate_white.json +++ b/src/generated/resources/data/anvilcraft/recipe/white_chocolate.json @@ -13,6 +13,6 @@ ], "result": { "count": 4, - "id": "anvilcraft:chocolate_white" + "id": "anvilcraft:white_chocolate" } } \ No newline at end of file diff --git a/src/generated/resources/data/anvilcraft/recipe/white_chocolate_block.json b/src/generated/resources/data/anvilcraft/recipe/white_chocolate_block.json index f733d75dfc..ae41ddf590 100644 --- a/src/generated/resources/data/anvilcraft/recipe/white_chocolate_block.json +++ b/src/generated/resources/data/anvilcraft/recipe/white_chocolate_block.json @@ -2,7 +2,7 @@ "type": "minecraft:crafting_shaped", "category": "building", "key": { - "A": "anvilcraft:chocolate_white" + "A": "anvilcraft:white_chocolate" }, "pattern": [ "AAA", diff --git a/src/generated/resources/data/anvilcraft/recipe/white_chocolate_from_block.json b/src/generated/resources/data/anvilcraft/recipe/white_chocolate_from_block.json index 588c08d2ec..053cdab23c 100644 --- a/src/generated/resources/data/anvilcraft/recipe/white_chocolate_from_block.json +++ b/src/generated/resources/data/anvilcraft/recipe/white_chocolate_from_block.json @@ -6,6 +6,6 @@ ], "result": { "count": 9, - "id": "anvilcraft:chocolate_white" + "id": "anvilcraft:white_chocolate" } } \ No newline at end of file diff --git a/src/generated/resources/data/anvilcraft/tags/item/capacitor.json b/src/generated/resources/data/anvilcraft/tags/item/capacitor.json index eb102d9346..d18548b36c 100644 --- a/src/generated/resources/data/anvilcraft/tags/item/capacitor.json +++ b/src/generated/resources/data/anvilcraft/tags/item/capacitor.json @@ -1,6 +1,6 @@ { "values": [ "anvilcraft:capacitor", - "anvilcraft:capacitor_empty" + "anvilcraft:empty_capacitor" ] } \ No newline at end of file diff --git a/src/generated/resources/data/anvilcraft/tags/item/reinforced_concrete.json b/src/generated/resources/data/anvilcraft/tags/item/reinforced_concrete.json index d26a673ac7..8713096b60 100644 --- a/src/generated/resources/data/anvilcraft/tags/item/reinforced_concrete.json +++ b/src/generated/resources/data/anvilcraft/tags/item/reinforced_concrete.json @@ -1,68 +1,68 @@ { "values": [ "anvilcraft:white_reinforced_concrete", - "anvilcraft:light_gray_reinforced_concrete", - "anvilcraft:gray_reinforced_concrete", - "anvilcraft:black_reinforced_concrete", - "anvilcraft:brown_reinforced_concrete", - "anvilcraft:red_reinforced_concrete", - "anvilcraft:orange_reinforced_concrete", - "anvilcraft:yellow_reinforced_concrete", - "anvilcraft:lime_reinforced_concrete", - "anvilcraft:green_reinforced_concrete", - "anvilcraft:cyan_reinforced_concrete", - "anvilcraft:light_blue_reinforced_concrete", - "anvilcraft:blue_reinforced_concrete", - "anvilcraft:purple_reinforced_concrete", - "anvilcraft:magenta_reinforced_concrete", - "anvilcraft:pink_reinforced_concrete", "anvilcraft:white_reinforced_concrete_slab", - "anvilcraft:light_gray_reinforced_concrete_slab", - "anvilcraft:gray_reinforced_concrete_slab", - "anvilcraft:black_reinforced_concrete_slab", - "anvilcraft:brown_reinforced_concrete_slab", - "anvilcraft:red_reinforced_concrete_slab", - "anvilcraft:orange_reinforced_concrete_slab", - "anvilcraft:yellow_reinforced_concrete_slab", - "anvilcraft:lime_reinforced_concrete_slab", - "anvilcraft:green_reinforced_concrete_slab", - "anvilcraft:cyan_reinforced_concrete_slab", - "anvilcraft:light_blue_reinforced_concrete_slab", - "anvilcraft:blue_reinforced_concrete_slab", - "anvilcraft:purple_reinforced_concrete_slab", - "anvilcraft:magenta_reinforced_concrete_slab", - "anvilcraft:pink_reinforced_concrete_slab", "anvilcraft:white_reinforced_concrete_stair", - "anvilcraft:light_gray_reinforced_concrete_stair", - "anvilcraft:gray_reinforced_concrete_stair", - "anvilcraft:black_reinforced_concrete_stair", - "anvilcraft:brown_reinforced_concrete_stair", - "anvilcraft:red_reinforced_concrete_stair", - "anvilcraft:orange_reinforced_concrete_stair", - "anvilcraft:yellow_reinforced_concrete_stair", - "anvilcraft:lime_reinforced_concrete_stair", - "anvilcraft:green_reinforced_concrete_stair", - "anvilcraft:cyan_reinforced_concrete_stair", - "anvilcraft:light_blue_reinforced_concrete_stair", - "anvilcraft:blue_reinforced_concrete_stair", - "anvilcraft:purple_reinforced_concrete_stair", - "anvilcraft:magenta_reinforced_concrete_stair", - "anvilcraft:pink_reinforced_concrete_stair", "anvilcraft:white_reinforced_concrete_wall", + "anvilcraft:light_gray_reinforced_concrete", + "anvilcraft:light_gray_reinforced_concrete_slab", + "anvilcraft:light_gray_reinforced_concrete_stair", "anvilcraft:light_gray_reinforced_concrete_wall", + "anvilcraft:gray_reinforced_concrete", + "anvilcraft:gray_reinforced_concrete_slab", + "anvilcraft:gray_reinforced_concrete_stair", "anvilcraft:gray_reinforced_concrete_wall", + "anvilcraft:black_reinforced_concrete", + "anvilcraft:black_reinforced_concrete_slab", + "anvilcraft:black_reinforced_concrete_stair", "anvilcraft:black_reinforced_concrete_wall", + "anvilcraft:brown_reinforced_concrete", + "anvilcraft:brown_reinforced_concrete_slab", + "anvilcraft:brown_reinforced_concrete_stair", "anvilcraft:brown_reinforced_concrete_wall", + "anvilcraft:red_reinforced_concrete", + "anvilcraft:red_reinforced_concrete_slab", + "anvilcraft:red_reinforced_concrete_stair", "anvilcraft:red_reinforced_concrete_wall", + "anvilcraft:orange_reinforced_concrete", + "anvilcraft:orange_reinforced_concrete_slab", + "anvilcraft:orange_reinforced_concrete_stair", "anvilcraft:orange_reinforced_concrete_wall", + "anvilcraft:yellow_reinforced_concrete", + "anvilcraft:yellow_reinforced_concrete_slab", + "anvilcraft:yellow_reinforced_concrete_stair", "anvilcraft:yellow_reinforced_concrete_wall", + "anvilcraft:lime_reinforced_concrete", + "anvilcraft:lime_reinforced_concrete_slab", + "anvilcraft:lime_reinforced_concrete_stair", "anvilcraft:lime_reinforced_concrete_wall", + "anvilcraft:green_reinforced_concrete", + "anvilcraft:green_reinforced_concrete_slab", + "anvilcraft:green_reinforced_concrete_stair", "anvilcraft:green_reinforced_concrete_wall", + "anvilcraft:cyan_reinforced_concrete", + "anvilcraft:cyan_reinforced_concrete_slab", + "anvilcraft:cyan_reinforced_concrete_stair", "anvilcraft:cyan_reinforced_concrete_wall", + "anvilcraft:light_blue_reinforced_concrete", + "anvilcraft:light_blue_reinforced_concrete_slab", + "anvilcraft:light_blue_reinforced_concrete_stair", "anvilcraft:light_blue_reinforced_concrete_wall", + "anvilcraft:blue_reinforced_concrete", + "anvilcraft:blue_reinforced_concrete_slab", + "anvilcraft:blue_reinforced_concrete_stair", "anvilcraft:blue_reinforced_concrete_wall", + "anvilcraft:purple_reinforced_concrete", + "anvilcraft:purple_reinforced_concrete_slab", + "anvilcraft:purple_reinforced_concrete_stair", "anvilcraft:purple_reinforced_concrete_wall", + "anvilcraft:magenta_reinforced_concrete", + "anvilcraft:magenta_reinforced_concrete_slab", + "anvilcraft:magenta_reinforced_concrete_stair", "anvilcraft:magenta_reinforced_concrete_wall", + "anvilcraft:pink_reinforced_concrete", + "anvilcraft:pink_reinforced_concrete_slab", + "anvilcraft:pink_reinforced_concrete_stair", "anvilcraft:pink_reinforced_concrete_wall" ] -} \ No newline at end of file +} diff --git a/src/generated/resources/data/c/tags/block/dyed.json b/src/generated/resources/data/c/tags/block/dyed.json index d26a673ac7..8713096b60 100644 --- a/src/generated/resources/data/c/tags/block/dyed.json +++ b/src/generated/resources/data/c/tags/block/dyed.json @@ -1,68 +1,68 @@ { "values": [ "anvilcraft:white_reinforced_concrete", - "anvilcraft:light_gray_reinforced_concrete", - "anvilcraft:gray_reinforced_concrete", - "anvilcraft:black_reinforced_concrete", - "anvilcraft:brown_reinforced_concrete", - "anvilcraft:red_reinforced_concrete", - "anvilcraft:orange_reinforced_concrete", - "anvilcraft:yellow_reinforced_concrete", - "anvilcraft:lime_reinforced_concrete", - "anvilcraft:green_reinforced_concrete", - "anvilcraft:cyan_reinforced_concrete", - "anvilcraft:light_blue_reinforced_concrete", - "anvilcraft:blue_reinforced_concrete", - "anvilcraft:purple_reinforced_concrete", - "anvilcraft:magenta_reinforced_concrete", - "anvilcraft:pink_reinforced_concrete", "anvilcraft:white_reinforced_concrete_slab", - "anvilcraft:light_gray_reinforced_concrete_slab", - "anvilcraft:gray_reinforced_concrete_slab", - "anvilcraft:black_reinforced_concrete_slab", - "anvilcraft:brown_reinforced_concrete_slab", - "anvilcraft:red_reinforced_concrete_slab", - "anvilcraft:orange_reinforced_concrete_slab", - "anvilcraft:yellow_reinforced_concrete_slab", - "anvilcraft:lime_reinforced_concrete_slab", - "anvilcraft:green_reinforced_concrete_slab", - "anvilcraft:cyan_reinforced_concrete_slab", - "anvilcraft:light_blue_reinforced_concrete_slab", - "anvilcraft:blue_reinforced_concrete_slab", - "anvilcraft:purple_reinforced_concrete_slab", - "anvilcraft:magenta_reinforced_concrete_slab", - "anvilcraft:pink_reinforced_concrete_slab", "anvilcraft:white_reinforced_concrete_stair", - "anvilcraft:light_gray_reinforced_concrete_stair", - "anvilcraft:gray_reinforced_concrete_stair", - "anvilcraft:black_reinforced_concrete_stair", - "anvilcraft:brown_reinforced_concrete_stair", - "anvilcraft:red_reinforced_concrete_stair", - "anvilcraft:orange_reinforced_concrete_stair", - "anvilcraft:yellow_reinforced_concrete_stair", - "anvilcraft:lime_reinforced_concrete_stair", - "anvilcraft:green_reinforced_concrete_stair", - "anvilcraft:cyan_reinforced_concrete_stair", - "anvilcraft:light_blue_reinforced_concrete_stair", - "anvilcraft:blue_reinforced_concrete_stair", - "anvilcraft:purple_reinforced_concrete_stair", - "anvilcraft:magenta_reinforced_concrete_stair", - "anvilcraft:pink_reinforced_concrete_stair", "anvilcraft:white_reinforced_concrete_wall", + "anvilcraft:light_gray_reinforced_concrete", + "anvilcraft:light_gray_reinforced_concrete_slab", + "anvilcraft:light_gray_reinforced_concrete_stair", "anvilcraft:light_gray_reinforced_concrete_wall", + "anvilcraft:gray_reinforced_concrete", + "anvilcraft:gray_reinforced_concrete_slab", + "anvilcraft:gray_reinforced_concrete_stair", "anvilcraft:gray_reinforced_concrete_wall", + "anvilcraft:black_reinforced_concrete", + "anvilcraft:black_reinforced_concrete_slab", + "anvilcraft:black_reinforced_concrete_stair", "anvilcraft:black_reinforced_concrete_wall", + "anvilcraft:brown_reinforced_concrete", + "anvilcraft:brown_reinforced_concrete_slab", + "anvilcraft:brown_reinforced_concrete_stair", "anvilcraft:brown_reinforced_concrete_wall", + "anvilcraft:red_reinforced_concrete", + "anvilcraft:red_reinforced_concrete_slab", + "anvilcraft:red_reinforced_concrete_stair", "anvilcraft:red_reinforced_concrete_wall", + "anvilcraft:orange_reinforced_concrete", + "anvilcraft:orange_reinforced_concrete_slab", + "anvilcraft:orange_reinforced_concrete_stair", "anvilcraft:orange_reinforced_concrete_wall", + "anvilcraft:yellow_reinforced_concrete", + "anvilcraft:yellow_reinforced_concrete_slab", + "anvilcraft:yellow_reinforced_concrete_stair", "anvilcraft:yellow_reinforced_concrete_wall", + "anvilcraft:lime_reinforced_concrete", + "anvilcraft:lime_reinforced_concrete_slab", + "anvilcraft:lime_reinforced_concrete_stair", "anvilcraft:lime_reinforced_concrete_wall", + "anvilcraft:green_reinforced_concrete", + "anvilcraft:green_reinforced_concrete_slab", + "anvilcraft:green_reinforced_concrete_stair", "anvilcraft:green_reinforced_concrete_wall", + "anvilcraft:cyan_reinforced_concrete", + "anvilcraft:cyan_reinforced_concrete_slab", + "anvilcraft:cyan_reinforced_concrete_stair", "anvilcraft:cyan_reinforced_concrete_wall", + "anvilcraft:light_blue_reinforced_concrete", + "anvilcraft:light_blue_reinforced_concrete_slab", + "anvilcraft:light_blue_reinforced_concrete_stair", "anvilcraft:light_blue_reinforced_concrete_wall", + "anvilcraft:blue_reinforced_concrete", + "anvilcraft:blue_reinforced_concrete_slab", + "anvilcraft:blue_reinforced_concrete_stair", "anvilcraft:blue_reinforced_concrete_wall", + "anvilcraft:purple_reinforced_concrete", + "anvilcraft:purple_reinforced_concrete_slab", + "anvilcraft:purple_reinforced_concrete_stair", "anvilcraft:purple_reinforced_concrete_wall", + "anvilcraft:magenta_reinforced_concrete", + "anvilcraft:magenta_reinforced_concrete_slab", + "anvilcraft:magenta_reinforced_concrete_stair", "anvilcraft:magenta_reinforced_concrete_wall", + "anvilcraft:pink_reinforced_concrete", + "anvilcraft:pink_reinforced_concrete_slab", + "anvilcraft:pink_reinforced_concrete_stair", "anvilcraft:pink_reinforced_concrete_wall" ] -} \ No newline at end of file +} diff --git a/src/generated/resources/data/c/tags/item/dyed.json b/src/generated/resources/data/c/tags/item/dyed.json index d26a673ac7..8713096b60 100644 --- a/src/generated/resources/data/c/tags/item/dyed.json +++ b/src/generated/resources/data/c/tags/item/dyed.json @@ -1,68 +1,68 @@ { "values": [ "anvilcraft:white_reinforced_concrete", - "anvilcraft:light_gray_reinforced_concrete", - "anvilcraft:gray_reinforced_concrete", - "anvilcraft:black_reinforced_concrete", - "anvilcraft:brown_reinforced_concrete", - "anvilcraft:red_reinforced_concrete", - "anvilcraft:orange_reinforced_concrete", - "anvilcraft:yellow_reinforced_concrete", - "anvilcraft:lime_reinforced_concrete", - "anvilcraft:green_reinforced_concrete", - "anvilcraft:cyan_reinforced_concrete", - "anvilcraft:light_blue_reinforced_concrete", - "anvilcraft:blue_reinforced_concrete", - "anvilcraft:purple_reinforced_concrete", - "anvilcraft:magenta_reinforced_concrete", - "anvilcraft:pink_reinforced_concrete", "anvilcraft:white_reinforced_concrete_slab", - "anvilcraft:light_gray_reinforced_concrete_slab", - "anvilcraft:gray_reinforced_concrete_slab", - "anvilcraft:black_reinforced_concrete_slab", - "anvilcraft:brown_reinforced_concrete_slab", - "anvilcraft:red_reinforced_concrete_slab", - "anvilcraft:orange_reinforced_concrete_slab", - "anvilcraft:yellow_reinforced_concrete_slab", - "anvilcraft:lime_reinforced_concrete_slab", - "anvilcraft:green_reinforced_concrete_slab", - "anvilcraft:cyan_reinforced_concrete_slab", - "anvilcraft:light_blue_reinforced_concrete_slab", - "anvilcraft:blue_reinforced_concrete_slab", - "anvilcraft:purple_reinforced_concrete_slab", - "anvilcraft:magenta_reinforced_concrete_slab", - "anvilcraft:pink_reinforced_concrete_slab", "anvilcraft:white_reinforced_concrete_stair", - "anvilcraft:light_gray_reinforced_concrete_stair", - "anvilcraft:gray_reinforced_concrete_stair", - "anvilcraft:black_reinforced_concrete_stair", - "anvilcraft:brown_reinforced_concrete_stair", - "anvilcraft:red_reinforced_concrete_stair", - "anvilcraft:orange_reinforced_concrete_stair", - "anvilcraft:yellow_reinforced_concrete_stair", - "anvilcraft:lime_reinforced_concrete_stair", - "anvilcraft:green_reinforced_concrete_stair", - "anvilcraft:cyan_reinforced_concrete_stair", - "anvilcraft:light_blue_reinforced_concrete_stair", - "anvilcraft:blue_reinforced_concrete_stair", - "anvilcraft:purple_reinforced_concrete_stair", - "anvilcraft:magenta_reinforced_concrete_stair", - "anvilcraft:pink_reinforced_concrete_stair", "anvilcraft:white_reinforced_concrete_wall", + "anvilcraft:light_gray_reinforced_concrete", + "anvilcraft:light_gray_reinforced_concrete_slab", + "anvilcraft:light_gray_reinforced_concrete_stair", "anvilcraft:light_gray_reinforced_concrete_wall", + "anvilcraft:gray_reinforced_concrete", + "anvilcraft:gray_reinforced_concrete_slab", + "anvilcraft:gray_reinforced_concrete_stair", "anvilcraft:gray_reinforced_concrete_wall", + "anvilcraft:black_reinforced_concrete", + "anvilcraft:black_reinforced_concrete_slab", + "anvilcraft:black_reinforced_concrete_stair", "anvilcraft:black_reinforced_concrete_wall", + "anvilcraft:brown_reinforced_concrete", + "anvilcraft:brown_reinforced_concrete_slab", + "anvilcraft:brown_reinforced_concrete_stair", "anvilcraft:brown_reinforced_concrete_wall", + "anvilcraft:red_reinforced_concrete", + "anvilcraft:red_reinforced_concrete_slab", + "anvilcraft:red_reinforced_concrete_stair", "anvilcraft:red_reinforced_concrete_wall", + "anvilcraft:orange_reinforced_concrete", + "anvilcraft:orange_reinforced_concrete_slab", + "anvilcraft:orange_reinforced_concrete_stair", "anvilcraft:orange_reinforced_concrete_wall", + "anvilcraft:yellow_reinforced_concrete", + "anvilcraft:yellow_reinforced_concrete_slab", + "anvilcraft:yellow_reinforced_concrete_stair", "anvilcraft:yellow_reinforced_concrete_wall", + "anvilcraft:lime_reinforced_concrete", + "anvilcraft:lime_reinforced_concrete_slab", + "anvilcraft:lime_reinforced_concrete_stair", "anvilcraft:lime_reinforced_concrete_wall", + "anvilcraft:green_reinforced_concrete", + "anvilcraft:green_reinforced_concrete_slab", + "anvilcraft:green_reinforced_concrete_stair", "anvilcraft:green_reinforced_concrete_wall", + "anvilcraft:cyan_reinforced_concrete", + "anvilcraft:cyan_reinforced_concrete_slab", + "anvilcraft:cyan_reinforced_concrete_stair", "anvilcraft:cyan_reinforced_concrete_wall", + "anvilcraft:light_blue_reinforced_concrete", + "anvilcraft:light_blue_reinforced_concrete_slab", + "anvilcraft:light_blue_reinforced_concrete_stair", "anvilcraft:light_blue_reinforced_concrete_wall", + "anvilcraft:blue_reinforced_concrete", + "anvilcraft:blue_reinforced_concrete_slab", + "anvilcraft:blue_reinforced_concrete_stair", "anvilcraft:blue_reinforced_concrete_wall", + "anvilcraft:purple_reinforced_concrete", + "anvilcraft:purple_reinforced_concrete_slab", + "anvilcraft:purple_reinforced_concrete_stair", "anvilcraft:purple_reinforced_concrete_wall", + "anvilcraft:magenta_reinforced_concrete", + "anvilcraft:magenta_reinforced_concrete_slab", + "anvilcraft:magenta_reinforced_concrete_stair", "anvilcraft:magenta_reinforced_concrete_wall", + "anvilcraft:pink_reinforced_concrete", + "anvilcraft:pink_reinforced_concrete_slab", + "anvilcraft:pink_reinforced_concrete_stair", "anvilcraft:pink_reinforced_concrete_wall" ] -} \ No newline at end of file +} diff --git a/src/generated/resources/data/c/tags/item/foods.json b/src/generated/resources/data/c/tags/item/foods.json index 8df4a32b7b..b492320fca 100644 --- a/src/generated/resources/data/c/tags/item/foods.json +++ b/src/generated/resources/data/c/tags/item/foods.json @@ -14,8 +14,8 @@ "anvilcraft:matcha_cake_block", "anvilcraft:cursed_golden_apple", "anvilcraft:chocolate", - "anvilcraft:chocolate_black", - "anvilcraft:chocolate_white", + "anvilcraft:black_chocolate", + "anvilcraft:white_chocolate", "anvilcraft:creamy_bread_roll", "anvilcraft:beef_mushroom_stew", "anvilcraft:canned_food", diff --git a/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json b/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json index 4f4f047530..9308e9a41c 100644 --- a/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json +++ b/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json @@ -191,68 +191,68 @@ "anvilcraft:black_chocolate_stairs", "anvilcraft:white_chocolate_stairs", "anvilcraft:white_reinforced_concrete", - "anvilcraft:light_gray_reinforced_concrete", - "anvilcraft:gray_reinforced_concrete", - "anvilcraft:black_reinforced_concrete", - "anvilcraft:brown_reinforced_concrete", - "anvilcraft:red_reinforced_concrete", - "anvilcraft:orange_reinforced_concrete", - "anvilcraft:yellow_reinforced_concrete", - "anvilcraft:lime_reinforced_concrete", - "anvilcraft:green_reinforced_concrete", - "anvilcraft:cyan_reinforced_concrete", - "anvilcraft:light_blue_reinforced_concrete", - "anvilcraft:blue_reinforced_concrete", - "anvilcraft:purple_reinforced_concrete", - "anvilcraft:magenta_reinforced_concrete", - "anvilcraft:pink_reinforced_concrete", "anvilcraft:white_reinforced_concrete_slab", - "anvilcraft:light_gray_reinforced_concrete_slab", - "anvilcraft:gray_reinforced_concrete_slab", - "anvilcraft:black_reinforced_concrete_slab", - "anvilcraft:brown_reinforced_concrete_slab", - "anvilcraft:red_reinforced_concrete_slab", - "anvilcraft:orange_reinforced_concrete_slab", - "anvilcraft:yellow_reinforced_concrete_slab", - "anvilcraft:lime_reinforced_concrete_slab", - "anvilcraft:green_reinforced_concrete_slab", - "anvilcraft:cyan_reinforced_concrete_slab", - "anvilcraft:light_blue_reinforced_concrete_slab", - "anvilcraft:blue_reinforced_concrete_slab", - "anvilcraft:purple_reinforced_concrete_slab", - "anvilcraft:magenta_reinforced_concrete_slab", - "anvilcraft:pink_reinforced_concrete_slab", "anvilcraft:white_reinforced_concrete_stair", - "anvilcraft:light_gray_reinforced_concrete_stair", - "anvilcraft:gray_reinforced_concrete_stair", - "anvilcraft:black_reinforced_concrete_stair", - "anvilcraft:brown_reinforced_concrete_stair", - "anvilcraft:red_reinforced_concrete_stair", - "anvilcraft:orange_reinforced_concrete_stair", - "anvilcraft:yellow_reinforced_concrete_stair", - "anvilcraft:lime_reinforced_concrete_stair", - "anvilcraft:green_reinforced_concrete_stair", - "anvilcraft:cyan_reinforced_concrete_stair", - "anvilcraft:light_blue_reinforced_concrete_stair", - "anvilcraft:blue_reinforced_concrete_stair", - "anvilcraft:purple_reinforced_concrete_stair", - "anvilcraft:magenta_reinforced_concrete_stair", - "anvilcraft:pink_reinforced_concrete_stair", "anvilcraft:white_reinforced_concrete_wall", + "anvilcraft:light_gray_reinforced_concrete", + "anvilcraft:light_gray_reinforced_concrete_slab", + "anvilcraft:light_gray_reinforced_concrete_stair", "anvilcraft:light_gray_reinforced_concrete_wall", + "anvilcraft:gray_reinforced_concrete", + "anvilcraft:gray_reinforced_concrete_slab", + "anvilcraft:gray_reinforced_concrete_stair", "anvilcraft:gray_reinforced_concrete_wall", + "anvilcraft:black_reinforced_concrete", + "anvilcraft:black_reinforced_concrete_slab", + "anvilcraft:black_reinforced_concrete_stair", "anvilcraft:black_reinforced_concrete_wall", + "anvilcraft:brown_reinforced_concrete", + "anvilcraft:brown_reinforced_concrete_slab", + "anvilcraft:brown_reinforced_concrete_stair", "anvilcraft:brown_reinforced_concrete_wall", + "anvilcraft:red_reinforced_concrete", + "anvilcraft:red_reinforced_concrete_slab", + "anvilcraft:red_reinforced_concrete_stair", "anvilcraft:red_reinforced_concrete_wall", + "anvilcraft:orange_reinforced_concrete", + "anvilcraft:orange_reinforced_concrete_slab", + "anvilcraft:orange_reinforced_concrete_stair", "anvilcraft:orange_reinforced_concrete_wall", + "anvilcraft:yellow_reinforced_concrete", + "anvilcraft:yellow_reinforced_concrete_slab", + "anvilcraft:yellow_reinforced_concrete_stair", "anvilcraft:yellow_reinforced_concrete_wall", + "anvilcraft:lime_reinforced_concrete", + "anvilcraft:lime_reinforced_concrete_slab", + "anvilcraft:lime_reinforced_concrete_stair", "anvilcraft:lime_reinforced_concrete_wall", + "anvilcraft:green_reinforced_concrete", + "anvilcraft:green_reinforced_concrete_slab", + "anvilcraft:green_reinforced_concrete_stair", "anvilcraft:green_reinforced_concrete_wall", + "anvilcraft:cyan_reinforced_concrete", + "anvilcraft:cyan_reinforced_concrete_slab", + "anvilcraft:cyan_reinforced_concrete_stair", "anvilcraft:cyan_reinforced_concrete_wall", + "anvilcraft:light_blue_reinforced_concrete", + "anvilcraft:light_blue_reinforced_concrete_slab", + "anvilcraft:light_blue_reinforced_concrete_stair", "anvilcraft:light_blue_reinforced_concrete_wall", + "anvilcraft:blue_reinforced_concrete", + "anvilcraft:blue_reinforced_concrete_slab", + "anvilcraft:blue_reinforced_concrete_stair", "anvilcraft:blue_reinforced_concrete_wall", + "anvilcraft:purple_reinforced_concrete", + "anvilcraft:purple_reinforced_concrete_slab", + "anvilcraft:purple_reinforced_concrete_stair", "anvilcraft:purple_reinforced_concrete_wall", + "anvilcraft:magenta_reinforced_concrete", + "anvilcraft:magenta_reinforced_concrete_slab", + "anvilcraft:magenta_reinforced_concrete_stair", "anvilcraft:magenta_reinforced_concrete_wall", + "anvilcraft:pink_reinforced_concrete", + "anvilcraft:pink_reinforced_concrete_slab", + "anvilcraft:pink_reinforced_concrete_stair", "anvilcraft:pink_reinforced_concrete_wall", "anvilcraft:heated_netherite_block", "anvilcraft:heated_tungsten_block", @@ -349,4 +349,4 @@ "anvilcraft:brass_pressure_plate", "anvilcraft:bronze_pressure_plate" ] -} \ No newline at end of file +} diff --git a/src/generated/resources/data/twilightforest/tags/item/banned_uncraftables.json b/src/generated/resources/data/twilightforest/tags/item/banned_uncraftables.json index f3af772918..6ca9ded6ec 100644 --- a/src/generated/resources/data/twilightforest/tags/item/banned_uncraftables.json +++ b/src/generated/resources/data/twilightforest/tags/item/banned_uncraftables.json @@ -34,8 +34,8 @@ "anvilcraft:celestial_forging_anvil_laser_interface", "anvilcraft:charger", "anvilcraft:chocolate", - "anvilcraft:chocolate_black", - "anvilcraft:chocolate_white", + "anvilcraft:black_chocolate", + "anvilcraft:white_chocolate", "anvilcraft:cursed_gold_ingot", "anvilcraft:deformation_smithing_template", "anvilcraft:disk", diff --git a/src/generated/resources/data/twilightforest/tags/item/banned_uncrafting_ingredients.json b/src/generated/resources/data/twilightforest/tags/item/banned_uncrafting_ingredients.json index b9268794be..c788bc02cb 100644 --- a/src/generated/resources/data/twilightforest/tags/item/banned_uncrafting_ingredients.json +++ b/src/generated/resources/data/twilightforest/tags/item/banned_uncrafting_ingredients.json @@ -14,9 +14,9 @@ "anvilcraft:transcendence_deco_block", "anvilcraft:transcendence_deco_outline", "anvilcraft:capacitor", - "anvilcraft:capacitor_empty", + "anvilcraft:empty_capacitor", "anvilcraft:supercapacitor", - "anvilcraft:supercapacitor_empty", + "anvilcraft:empty_supercapacitor", "anvilcraft:neutronium_ingot", "anvilcraft:charged_neutronium_ingot", "anvilcraft:stable_neutronium_ingot" diff --git a/src/main/java/dev/dubhe/anvilcraft/client/init/ModCreativeVariantGroups.java b/src/main/java/dev/dubhe/anvilcraft/client/init/ModCreativeVariantGroups.java index 7fc30f9ec4..71e7ff5b53 100644 --- a/src/main/java/dev/dubhe/anvilcraft/client/init/ModCreativeVariantGroups.java +++ b/src/main/java/dev/dubhe/anvilcraft/client/init/ModCreativeVariantGroups.java @@ -5,9 +5,9 @@ import dev.dubhe.anvilcraft.block.state.Color; import dev.dubhe.anvilcraft.init.block.ModBlocks; import dev.dubhe.anvilcraft.init.item.ModItems; -import it.unimi.dsi.fastutil.objects.Object2ObjectMap; import net.minecraft.world.level.ItemLike; +import java.util.Map; import java.util.function.BooleanSupplier; public final class ModCreativeVariantGroups { @@ -16,19 +16,14 @@ private ModCreativeVariantGroups() { public static void register() { BooleanSupplier enabled = () -> AnvilCraft.CLIENT_CONFIG.ui.enableCreativeVariantPicker; - CreativeVariantPickerRegistry.register(enabled, itemsOf(ModBlocks.REINFORCED_CONCRETES)); - CreativeVariantPickerRegistry.register(enabled, itemsOf(ModBlocks.REINFORCED_CONCRETE_SLABS)); - CreativeVariantPickerRegistry.register(enabled, itemsOf(ModBlocks.REINFORCED_CONCRETE_STAIRS)); - CreativeVariantPickerRegistry.register(enabled, itemsOf(ModBlocks.REINFORCED_CONCRETE_WALLS)); - CreativeVariantPickerRegistry.register(enabled, itemsOf(ModItems.CEMENT_BUCKETS)); + CreativeVariantPickerRegistry.register(enabled, ModCreativeVariantGroups.itemsOf(ModBlocks.REINFORCED_CONCRETES)); + CreativeVariantPickerRegistry.register(enabled, ModCreativeVariantGroups.itemsOf(ModBlocks.REINFORCED_CONCRETE_SLABS)); + CreativeVariantPickerRegistry.register(enabled, ModCreativeVariantGroups.itemsOf(ModBlocks.REINFORCED_CONCRETE_STAIRS)); + CreativeVariantPickerRegistry.register(enabled, ModCreativeVariantGroups.itemsOf(ModBlocks.REINFORCED_CONCRETE_WALLS)); + CreativeVariantPickerRegistry.register(enabled, ModCreativeVariantGroups.itemsOf(ModItems.CEMENT_BUCKETS)); } - private static ItemLike[] itemsOf(Object2ObjectMap family) { - ItemLike[] items = new ItemLike[Color.values().length]; - int index = 0; - for (Color color : Color.values()) { - items[index++] = family.get(color); - } - return items; + private static ItemLike[] itemsOf(Map family) { + return family.values().toArray(new ItemLike[0]); } } diff --git a/src/main/java/dev/dubhe/anvilcraft/data/recipe/RegistrumBlockRecipeLoader.java b/src/main/java/dev/dubhe/anvilcraft/data/recipe/RegistrumBlockRecipeLoader.java index b1ce000da6..0921e78d7f 100644 --- a/src/main/java/dev/dubhe/anvilcraft/data/recipe/RegistrumBlockRecipeLoader.java +++ b/src/main/java/dev/dubhe/anvilcraft/data/recipe/RegistrumBlockRecipeLoader.java @@ -2155,10 +2155,10 @@ public static void blackChocolateBlock(DataGenContext void whiteChocolateBlock(DataGenContext ModBlocks.CELESTIAL_FORGING_ANVIL_LASER_INTERFACE, ModBlocks.CHARGER, ModFoodItems.CHOCOLATE, - ModFoodItems.CHOCOLATE_BLACK, - ModFoodItems.CHOCOLATE_WHITE, + ModFoodItems.BLACK_CHOCOLATE, + ModFoodItems.WHITE_CHOCOLATE, ModItems.CURSED_GOLD_INGOT, ModItems.DEFORMATION_TEMPLATE, ModItems.DISK, diff --git a/src/main/java/dev/dubhe/anvilcraft/init/block/ModBlocks.java b/src/main/java/dev/dubhe/anvilcraft/init/block/ModBlocks.java index 06d1c6f010..3a6318a4d4 100644 --- a/src/main/java/dev/dubhe/anvilcraft/init/block/ModBlocks.java +++ b/src/main/java/dev/dubhe/anvilcraft/init/block/ModBlocks.java @@ -297,8 +297,6 @@ import dev.dubhe.anvilcraft.util.registrater.DataGenUtil; import dev.dubhe.anvilcraft.util.registrater.ModelProviderUtil; import dev.dubhe.anvilcraft.util.registrater.PropertiesProviderUtil; -import it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenHashMap; -import it.unimi.dsi.fastutil.objects.Object2ObjectMap; import net.minecraft.client.data.models.BlockModelGenerators; import net.minecraft.client.data.models.MultiVariant; import net.minecraft.client.data.models.blockstates.MultiVariantGenerator; @@ -366,15 +364,15 @@ import net.minecraft.world.level.storage.loot.providers.number.ConstantValue; import net.neoforged.neoforge.common.Tags; +import java.util.Collections; +import java.util.EnumMap; +import java.util.Map; import java.util.Optional; import java.util.function.Supplier; import static dev.dubhe.anvilcraft.AnvilCraft.REGISTRUM; -@SuppressWarnings({ - "unused", - "CodeBlock2Expr" -}) +@SuppressWarnings({"unused", "CodeBlock2Expr", "Convert2Lambda"}) public class ModBlocks { public static final BlockEntry AUTO_ENCHANTING_TABLE = REGISTRUM .block("auto_enchanting_table", AutoEnchantingTableBlock::new) @@ -608,14 +606,15 @@ public void accept( DataGenContext ctx, RegistrumItemModelGenerator generator ) { - generator.itemModelOutput.accept(ctx.get(), - ItemModelUtils.specialModel(ctx.getId().withPrefix("block/"), CreativeFluidTankItemRenderer.Unbaked.INSTANCE)); + generator.itemModelOutput.accept( + ctx.get(), + ItemModelUtils.specialModel(ctx.getId().withPrefix("block/"), CreativeFluidTankItemRenderer.Unbaked.INSTANCE) + ); } }) .build() .register(); - @SuppressWarnings("Convert2Lambda") public static final BlockEntry FLUID_TANK = REGISTRUM.block("fluid_tank", FluidTankBlock::new) .initialProperties(() -> Blocks.IRON_BLOCK) .properties(PropertiesProviderUtil::metalSound) @@ -640,7 +639,6 @@ public void accept( .recipe(RegistrumBlockRecipeLoader::fluidTank) .register(); - @SuppressWarnings("Convert2Lambda") public static final BlockEntry LARGE_FLUID_TANK = REGISTRUM.block( "large_fluid_tank", LargeFluidTankBlock::new @@ -713,8 +711,10 @@ public void accept( DataGenContext ctx, RegistrumItemModelGenerator generator ) { - generator.itemModelOutput.accept(ctx.get(), - ItemModelUtils.specialModel(ctx.getId().withPrefix("block/"), CreativeCrateItemRenderer.Unbaked.INSTANCE)); + generator.itemModelOutput.accept( + ctx.get(), + ItemModelUtils.specialModel(ctx.getId().withPrefix("block/"), CreativeCrateItemRenderer.Unbaked.INSTANCE) + ); } }) .build() @@ -1221,7 +1221,6 @@ public boolean doesSneakBypassUse(ItemStack stack, LevelReader level, BlockPos p .recipe(RegistrumBlockRecipeLoader::remoteTransmissionPole) .register(); - @SuppressWarnings("Convert2Lambda") public static final BlockEntry TESLA_TOWER = REGISTRUM.block("tesla_tower", TeslaTowerBlock::new) .initialProperties(ModBlocks.MAGNET_BLOCK) .loot(SimpleMultiPartBlock::loot) @@ -1400,7 +1399,6 @@ public void accept( .recipe(RegistrumBlockRecipeLoader::heliostats) .register(); - @SuppressWarnings("Convert2Lambda") public static final BlockEntry LOAD_MONITOR = REGISTRUM.block("load_monitor", LoadMonitorBlock::new) .initialProperties(() -> Blocks.IRON_BLOCK) .properties(PropertiesProviderUtil::metalSound) @@ -1425,7 +1423,6 @@ public void accept(DataGenContext ctx, RegistrumItemModelGenera .recipe(RegistrumBlockRecipeLoader::loadMonitor) .register(); - @SuppressWarnings("Convert2Lambda") public static final BlockEntry POWER_CONVERTER_SMALL = REGISTRUM.block( "power_converter_small", PowerConverterSmallBlock::new @@ -1455,7 +1452,6 @@ public void accept(DataGenContext ctx, RegistrumItemModelGenera .tag(BlockTags.MINEABLE_WITH_PICKAXE) .register(); - @SuppressWarnings("Convert2Lambda") public static final BlockEntry POWER_CONVERTER_MIDDLE = REGISTRUM.block( "power_converter_middle", PowerConverterMiddleBlock::new @@ -1485,7 +1481,6 @@ public void accept(DataGenContext ctx, RegistrumItemModelGenera .tag(BlockTags.MINEABLE_WITH_PICKAXE) .register(); - @SuppressWarnings("Convert2Lambda") public static final BlockEntry POWER_CONVERTER_BIG = REGISTRUM.block( "power_converter_big", PowerConverterBigBlock::new @@ -1515,7 +1510,6 @@ public void accept(DataGenContext ctx, RegistrumItemModelGenera .tag(BlockTags.MINEABLE_WITH_PICKAXE) .register(); - @SuppressWarnings("Convert2Lambda") public static final BlockEntry POWER_CONVERTER_SUPER_BIG = REGISTRUM.block( "power_converter_super_big", PowerConverterSuperBigBlock::new @@ -1545,7 +1539,6 @@ public void accept(DataGenContext ctx, RegistrumItemModelGenera .tag(BlockTags.MINEABLE_WITH_PICKAXE) .register(); - @SuppressWarnings("Convert2Lambda") public static final BlockEntry POWER_CONVERTER_EXTREMELY_BIG = REGISTRUM.block( "power_converter_extremely_big", PowerConverterExtremelyBigBlock::new @@ -1672,7 +1665,6 @@ public void accept(DataGenContext ctx, RegistrumItemModelGenera .recipe(RegistrumBlockRecipeLoader::blockPlacer) .register(); - @SuppressWarnings("Convert2Lambda") public static final BlockEntry SMART_BLOCK_PLACER = REGISTRUM .block("smart_block_placer", SmartBlockPlacerBlock::new) .initialProperties(() -> Blocks.IRON_BLOCK) @@ -1695,11 +1687,11 @@ public void accept(DataGenContext ctx, RegistrumItemModelGenera case WEST -> Quadrant.R270; default -> Quadrant.R0; }; - Quadrant yrot = isUpsideDown + Quadrant rotY = isUpsideDown ? Quadrant.values()[(baseY.ordinal() + 2) % 4] : baseY; return BlockModelGenerators.plainVariant(model) - .with(v -> v.withXRot(isUpsideDown ? Quadrant.R180 : Quadrant.R0).withYRot(yrot)); + .with(v -> v.withXRot(isUpsideDown ? Quadrant.R180 : Quadrant.R0).withYRot(rotY)); }))); }) .item(SmartBlockPlacerBlockItem::new) @@ -1735,11 +1727,11 @@ public void accept(DataGenContext ctx, Registru case WEST -> Quadrant.R270; default -> Quadrant.R0; }; - Quadrant yrot = isUpsideDown + Quadrant rotY = isUpsideDown ? Quadrant.values()[(baseY.ordinal() + 2) % 4] : baseY; return BlockModelGenerators.plainVariant(model) - .with(v -> v.withXRot(isUpsideDown ? Quadrant.R180 : Quadrant.R0).withYRot(yrot)); + .with(v -> v.withXRot(isUpsideDown ? Quadrant.R180 : Quadrant.R0).withYRot(rotY)); }))); }) .item().transform(PropertiesProviderUtil::blockItem).build() @@ -2016,7 +2008,6 @@ public void accept(DataGenContext ctx, Registru .build() .register(); - @SuppressWarnings("Convert2Lambda") public static BlockEntry SLIDING_RAIL = REGISTRUM.block("sliding_rail", SlidingRailBlock::new) .initialProperties(() -> Blocks.IRON_BLOCK) .properties(PropertiesProviderUtil::metalSound) @@ -2296,7 +2287,6 @@ public void accept( .tag(BlockTags.MINEABLE_WITH_PICKAXE, BlockTags.WITHER_IMMUNE, BlockTags.DRAGON_IMMUNE) .register(); - @SuppressWarnings("Convert2Lambda") public static final BlockEntry CELESTIAL_BACK_GATE = REGISTRUM .block("celestial_back_gate", CelestialBackGateBlock::new) .lang("Celestial Back Gate") @@ -2979,7 +2969,6 @@ public void accept( .recipe(RegistrumBlockRecipeLoader::heavyIronBeam) .register(); - @SuppressWarnings("Convert2Lambda") public static final BlockEntry HEAVY_IRON_WALL = REGISTRUM.block("heavy_iron_wall", HeavyIronWallBlock::new) .initialProperties(() -> Blocks.IRON_BLOCK) .properties(PropertiesProviderUtil::metalSound) @@ -3905,14 +3894,135 @@ public void accept(DataGenContext ctx, RegistrumItemModel .recipe(RegistrumBlockRecipeLoader::whiteChocolateStairs) .register(); - public static final Object2ObjectMap> REINFORCED_CONCRETES = - ModBlocks.registerReinforcedConcretes(); - public static final Object2ObjectMap> REINFORCED_CONCRETE_SLABS = - ModBlocks.registerReinforcedConcreteSlabs(); - public static final Object2ObjectMap> REINFORCED_CONCRETE_STAIRS = - ModBlocks.registerReinforcedConcreteStairs(); - public static final Object2ObjectMap> REINFORCED_CONCRETE_WALLS = - ModBlocks.registerReinforcedConcreteWalls(); + public static final Map> REINFORCED_CONCRETES; + public static final Map> REINFORCED_CONCRETE_SLABS; + public static final Map> REINFORCED_CONCRETE_STAIRS; + public static final Map> REINFORCED_CONCRETE_WALLS; + + static { + EnumMap> full = new EnumMap<>(Color.class); + EnumMap> slab = new EnumMap<>(Color.class); + EnumMap> stair = new EnumMap<>(Color.class); + EnumMap> wall = new EnumMap<>(Color.class); + for (Color color : Color.values()) { + var entryFull = ModBlocks.registerReinforcedConcreteBlock(color); + full.put(color, entryFull); + + var entrySlab = ModBlocks.registerReinforcedConcreteSlabBlock(color, entryFull); + slab.put(color, entrySlab); + + var entryStair = ModBlocks.registerReinforcedConcreteStairBlock(color, entryFull); + stair.put(color, entryStair); + + var entryWall = ModBlocks.registerReinforcedConcreteWallBlock(color, entryFull); + wall.put(color, entryWall); + } + REINFORCED_CONCRETES = Collections.unmodifiableMap(full); + REINFORCED_CONCRETE_SLABS = Collections.unmodifiableMap(slab); + REINFORCED_CONCRETE_STAIRS = Collections.unmodifiableMap(stair); + REINFORCED_CONCRETE_WALLS = Collections.unmodifiableMap(wall); + } + + private static BlockEntry registerReinforcedConcreteBlock(Color color) { + return REGISTRUM + .block(color + "_reinforced_concrete", p -> new ReinforcedConcreteBlock(p, color)) + .initialProperties(() -> Blocks.TERRACOTTA) + .aliasFrom(AnvilCraft.of("reinforced_concrete_" + color)) + .properties(properties -> properties.destroyTime(2.0F).explosionResistance(15.0F)) + .item() + .transform(PropertiesProviderUtil::blockItem) + .tag(ModItemTags.REINFORCED_CONCRETE, Tags.Items.DYED, ModItemTags.DYED_COLORS.get(color)) + .build() + .blockstate(() -> new NonNullBiConsumer<>() { + @Override + public void accept( + DataGenContext ctx, + RegistrumBlockModelGenerator generator + ) { + Identifier singleModel = generator.withParent(ModelTemplates.CUBE_ALL) + .texture(TextureSlot.ALL, generator.modLoc("block/%s_reinforced_concrete".formatted(color)), false) + .build(generator.modLoc("block/%s_reinforced_concrete".formatted(color))); + Identifier topModel = generator.withParent(ModelTemplates.CUBE_COLUMN) + .texture(TextureSlot.END, generator.modLoc("block/%s_reinforced_concrete".formatted(color)), false) + .texture(TextureSlot.SIDE, generator.modLoc("block/%s_reinforced_concrete_top".formatted(color)), false) + .build(generator.modLoc("block/%s_reinforced_concrete_top".formatted(color))); + Identifier bottomModel = generator.withParent(ModelTemplates.CUBE_COLUMN) + .texture(TextureSlot.END, generator.modLoc("block/%s_reinforced_concrete".formatted(color)), false) + .texture(TextureSlot.SIDE, generator.modLoc("block/%s_reinforced_concrete_bottom".formatted(color)), false) + .build(generator.modLoc("block/%s_reinforced_concrete_bottom".formatted(color))); + generator.blockStateOutput.accept( + MultiVariantGenerator.dispatch(ctx.get()) + .with( + PropertyDispatchWrap.initial(ReinforcedConcreteBlock.HALF) + .select( + ReinforcedConcreteHalf.TOP, + BlockModelGenerators.plainVariant(topModel) + ) + .select( + ReinforcedConcreteHalf.SINGLE, + BlockModelGenerators.plainVariant(singleModel) + ) + .select( + ReinforcedConcreteHalf.BOTTOM, + BlockModelGenerators.plainVariant(bottomModel) + ) + .dispatch() + ) + ); + } + }) + .tag(BlockTags.MINEABLE_WITH_PICKAXE, Tags.Blocks.DYED, ModBlockTags.DYED_COLORS.get(color)) + .register(); + } + + private static BlockEntry registerReinforcedConcreteSlabBlock(Color color, BlockEntry parent) { + return REGISTRUM.block(color + "_reinforced_concrete_slab", SlabBlock::new) + .initialProperties(() -> Blocks.TERRACOTTA) + .aliasFrom(AnvilCraft.of("reinforced_concrete_" + color + "_slab")) + .properties(properties -> properties.destroyTime(2.0F).explosionResistance(15.0F)) + .item() + .transform(PropertiesProviderUtil::blockItem) + .tag(ModItemTags.REINFORCED_CONCRETE, ItemTags.SLABS, Tags.Items.DYED, ModItemTags.DYED_COLORS.get(color)) + .build() + .blockstate(() -> DataGenUtil.slabBlock(AnvilCraft.of("block/%s_reinforced_concrete".formatted(color)))) + .loot((tables, block) -> tables.add(block, tables.createSlabItemTable(block))) + .tag(BlockTags.MINEABLE_WITH_PICKAXE, BlockTags.SLABS, Tags.Blocks.DYED, ModBlockTags.DYED_COLORS.get(color)) + .recipe(RegistrumBlockRecipeLoader.reinforcedConcreteSlab(parent)) + .register(); + } + + private static BlockEntry registerReinforcedConcreteStairBlock(Color color, BlockEntry parent) { + return REGISTRUM.block( + color + "_reinforced_concrete_stair", + properties -> new StairBlock(parent.getDefaultState(), properties) + ) + .initialProperties(() -> Blocks.TERRACOTTA) + .aliasFrom(AnvilCraft.of("reinforced_concrete_" + color + "_stair")) + .properties(properties -> properties.destroyTime(2.0F).explosionResistance(15.0F)) + .item() + .transform(PropertiesProviderUtil::blockItem) + .tag(ModItemTags.REINFORCED_CONCRETE, ItemTags.STAIRS, Tags.Items.DYED, ModItemTags.DYED_COLORS.get(color)) + .build() + .blockstate(() -> DataGenUtil.stairsBlock(AnvilCraft.of("block/%s_reinforced_concrete".formatted(color)))) + .tag(BlockTags.MINEABLE_WITH_PICKAXE, BlockTags.STAIRS, Tags.Blocks.DYED, ModBlockTags.DYED_COLORS.get(color)) + .recipe(RegistrumBlockRecipeLoader.reinforcedConcreteStair(parent)) + .register(); + } + + private static BlockEntry registerReinforcedConcreteWallBlock(Color color, BlockEntry parent) { + return REGISTRUM.block(color + "_reinforced_concrete_wall", WallBlock::new) + .initialProperties(() -> Blocks.TERRACOTTA) + .aliasFrom(AnvilCraft.of("reinforced_concrete_" + color + "_wall")) + .properties(properties -> properties.destroyTime(2.0F).explosionResistance(15.0F)) + .blockstate(() -> DataGenUtil.wallBlock(AnvilCraft.of("block/%s_reinforced_concrete_wall".formatted(color)))) + .tag(BlockTags.MINEABLE_WITH_PICKAXE, BlockTags.WALLS, Tags.Blocks.DYED, ModBlockTags.DYED_COLORS.get(color)) + .recipe(RegistrumBlockRecipeLoader.reinforcedConcreteWall(parent)) + .item() + .transform(PropertiesProviderUtil::blockItem) + .tag(ModItemTags.REINFORCED_CONCRETE, ItemTags.WALLS, Tags.Items.DYED, ModItemTags.DYED_COLORS.get(color)) + .build() + .register(); + } public static final BlockEntry HEATED_NETHERITE_BLOCK = REGISTRUM.block("heated_netherite_block", HeatedBlock::new) .lang("Heated Block of Netherite") @@ -4444,155 +4554,17 @@ public void accept(DataGenContext ctx, RegistrumItemModel .onRegister(block -> Item.BY_BLOCK.put(block, Items.CAULDRON)) .register(); - public static final Object2ObjectMap> CEMENT_CAULDRONS = ModBlocks.registerAllCementCauldrons(); - - private static Object2ObjectMap> registerReinforcedConcretes() { - Object2ObjectMap> map = new Object2ObjectLinkedOpenHashMap<>(); - for (Color color : Color.values()) { - var entry = ModBlocks.registerReinforcedConcreteBlock(color); - map.put(color, entry); - } - return map; - } - - private static BlockEntry registerReinforcedConcreteBlock(Color color) { - // noinspection Convert2Lambda - return REGISTRUM.block( - color + "_reinforced_concrete", - p -> new ReinforcedConcreteBlock(p, color) - ).initialProperties(() -> Blocks.TERRACOTTA) - .aliasFrom(AnvilCraft.of("reinforced_concrete_" + color)) - .properties(properties -> properties.destroyTime(2.0F).explosionResistance(15.0F)) - .item() - .transform(PropertiesProviderUtil::blockItem) - .tag(ModItemTags.REINFORCED_CONCRETE, Tags.Items.DYED, ModItemTags.DYED_COLORS.get(color)) - .build() - .blockstate(() -> new NonNullBiConsumer<>() { - @Override - public void accept( - DataGenContext ctx, - RegistrumBlockModelGenerator generator - ) { - Identifier singleModel = generator.withParent(ModelTemplates.CUBE_ALL) - .texture(TextureSlot.ALL, generator.modLoc("block/%s_reinforced_concrete".formatted(color)), false) - .build(generator.modLoc("block/%s_reinforced_concrete".formatted(color))); - Identifier topModel = generator.withParent(ModelTemplates.CUBE_COLUMN) - .texture(TextureSlot.END, generator.modLoc("block/%s_reinforced_concrete".formatted(color)), false) - .texture(TextureSlot.SIDE, generator.modLoc("block/%s_reinforced_concrete_top".formatted(color)), false) - .build(generator.modLoc("block/%s_reinforced_concrete_top".formatted(color))); - Identifier bottomModel = generator.withParent(ModelTemplates.CUBE_COLUMN) - .texture(TextureSlot.END, generator.modLoc("block/%s_reinforced_concrete".formatted(color)), false) - .texture(TextureSlot.SIDE, generator.modLoc("block/%s_reinforced_concrete_bottom".formatted(color)), false) - .build(generator.modLoc("block/%s_reinforced_concrete_bottom".formatted(color))); - generator.blockStateOutput.accept(MultiVariantGenerator.dispatch(ctx.get()) - .with( - PropertyDispatchWrap.initial(ReinforcedConcreteBlock.HALF) - .select( - ReinforcedConcreteHalf.TOP, - BlockModelGenerators.plainVariant(topModel) - ) - .select( - ReinforcedConcreteHalf.SINGLE, - BlockModelGenerators.plainVariant(singleModel) - ) - .select( - ReinforcedConcreteHalf.BOTTOM, - BlockModelGenerators.plainVariant(bottomModel) - ) - .dispatch() - )); - } - }) - .tag(BlockTags.MINEABLE_WITH_PICKAXE, Tags.Blocks.DYED, ModBlockTags.DYED_COLORS.get(color)) - .register(); - } - - private static Object2ObjectMap> registerReinforcedConcreteSlabs() { - Object2ObjectMap> map = new Object2ObjectLinkedOpenHashMap<>(); - for (Color color : Color.values()) { - var entry = ModBlocks.registerReinforcedConcreteSlabBlock(color, ModBlocks.REINFORCED_CONCRETES.get(color)); - map.put(color, entry); - } - return map; - } - - private static BlockEntry registerReinforcedConcreteSlabBlock(Color color, BlockEntry parent) { - return REGISTRUM.block(color + "_reinforced_concrete_slab", SlabBlock::new) - .initialProperties(() -> Blocks.TERRACOTTA) - .aliasFrom(AnvilCraft.of("reinforced_concrete_" + color + "_slab")) - .properties(properties -> properties.destroyTime(2.0F).explosionResistance(15.0F)) - .item() - .transform(PropertiesProviderUtil::blockItem) - .tag(ModItemTags.REINFORCED_CONCRETE, ItemTags.SLABS, Tags.Items.DYED, ModItemTags.DYED_COLORS.get(color)) - .build() - .blockstate(() -> DataGenUtil.slabBlock(AnvilCraft.of("block/%s_reinforced_concrete".formatted(color)))) - .loot((tables, block) -> tables.add(block, tables.createSlabItemTable(block))) - .tag(BlockTags.MINEABLE_WITH_PICKAXE, BlockTags.SLABS, Tags.Blocks.DYED, ModBlockTags.DYED_COLORS.get(color)) - .recipe(RegistrumBlockRecipeLoader.reinforcedConcreteSlab(parent)) - .register(); - } - - private static Object2ObjectMap> registerReinforcedConcreteStairs() { - Object2ObjectMap> map = new Object2ObjectLinkedOpenHashMap<>(); - for (Color color : Color.values()) { - var entry = ModBlocks.registerReinforcedConcreteStairBlock(color, ModBlocks.REINFORCED_CONCRETES.get(color)); - map.put(color, entry); - } - return map; - } - - private static BlockEntry registerReinforcedConcreteStairBlock(Color color, BlockEntry parent) { - return REGISTRUM.block( - color + "_reinforced_concrete_stair", - properties -> new StairBlock(parent.getDefaultState(), properties) - ) - .initialProperties(() -> Blocks.TERRACOTTA) - .aliasFrom(AnvilCraft.of("reinforced_concrete_" + color + "_stair")) - .properties(properties -> properties.destroyTime(2.0F).explosionResistance(15.0F)) - .item() - .transform(PropertiesProviderUtil::blockItem) - .tag(ModItemTags.REINFORCED_CONCRETE, ItemTags.STAIRS, Tags.Items.DYED, ModItemTags.DYED_COLORS.get(color)) - .build() - .blockstate(() -> DataGenUtil.stairsBlock(AnvilCraft.of("block/%s_reinforced_concrete".formatted(color)))) - .tag(BlockTags.MINEABLE_WITH_PICKAXE, BlockTags.STAIRS, Tags.Blocks.DYED, ModBlockTags.DYED_COLORS.get(color)) - .recipe(RegistrumBlockRecipeLoader.reinforcedConcreteStair(parent)) - .register(); - } - - private static Object2ObjectMap> registerReinforcedConcreteWalls() { - Object2ObjectMap> map = new Object2ObjectLinkedOpenHashMap<>(); - for (Color color : Color.values()) { - var entry = ModBlocks.registerReinforcedConcreteWallBlock(color, ModBlocks.REINFORCED_CONCRETES.get(color)); - map.put(color, entry); - } - return map; - } - - private static BlockEntry registerReinforcedConcreteWallBlock(Color color, BlockEntry parent) { - return REGISTRUM.block(color + "_reinforced_concrete_wall", WallBlock::new) - .initialProperties(() -> Blocks.TERRACOTTA) - .aliasFrom(AnvilCraft.of("reinforced_concrete_" + color + "_wall")) - .properties(properties -> properties.destroyTime(2.0F).explosionResistance(15.0F)) - .blockstate(() -> DataGenUtil.wallBlock(AnvilCraft.of("block/%s_reinforced_concrete_wall".formatted(color)))) - .tag(BlockTags.MINEABLE_WITH_PICKAXE, BlockTags.WALLS, Tags.Blocks.DYED, ModBlockTags.DYED_COLORS.get(color)) - .recipe(RegistrumBlockRecipeLoader.reinforcedConcreteWall(parent)) - .item() - .transform(PropertiesProviderUtil::blockItem) - .tag(ModItemTags.REINFORCED_CONCRETE, ItemTags.WALLS, Tags.Items.DYED, ModItemTags.DYED_COLORS.get(color)) - .build() - .register(); - } + public static final Map> CEMENT_CAULDRONS; - private static Object2ObjectMap> registerAllCementCauldrons() { - Object2ObjectMap> map = new Object2ObjectLinkedOpenHashMap<>(); + static { + EnumMap> map = new EnumMap<>(Color.class); for (Color color : Color.values()) { var entry = ModBlocks.registerCementCauldron(color); map.put(color, entry); } - return map; + CEMENT_CAULDRONS = Collections.unmodifiableMap(map); } - @SuppressWarnings("Convert2Lambda") private static BlockEntry registerCementCauldron(Color color) { return REGISTRUM.block(color + "_cement_cauldron", p -> new CementCauldronBlock(p, color)) .initialProperties(() -> Blocks.CAULDRON) @@ -4735,15 +4707,15 @@ private static BlockEntry registerPressu .blockstate(ModelProviderUtil::liquid) .register(); - public static final Object2ObjectMap> CEMENTS = ModBlocks.registerAllCementLiquidBlock(); + public static final Map> CEMENTS; - private static Object2ObjectMap> registerAllCementLiquidBlock() { - Object2ObjectMap> map = new Object2ObjectLinkedOpenHashMap<>(); + static { + EnumMap> map = new EnumMap<>(Color.class); for (Color color : Color.values()) { var entry = ModBlocks.registerCementLiquidBlock(color); map.put(color, entry); } - return map; + CEMENTS = Collections.unmodifiableMap(map); } private static BlockEntry registerCementLiquidBlock(Color color) { @@ -4903,7 +4875,6 @@ private static BlockEntry registerCementLiquidBlock(Color color) { .recipe(RegistrumBlockRecipeLoader::singularityCrystal) .register(); - @SuppressWarnings("Convert2Lambda") public static final BlockEntry SUGAR_BLOCK = REGISTRUM.block("sugar_block", SugarBlock::new) .initialProperties(() -> Blocks.LAPIS_BLOCK) .loot(SugarBlock::loot) @@ -5092,8 +5063,13 @@ public void accept(DataGenContext ctx, RegistrumBlockModelGen @Override public void accept(DataGenContext ctx, RegistrumItemModelGenerator generator) { var model = ctx.getId().withPrefix("block/"); - generator.itemModelOutput.accept(ctx.get(), ItemModelUtils.composite(ItemModelUtils.plainModel(model), - ItemModelUtils.specialModel(model, StorageFluidPortItemRenderer.Unbaked.INSTANCE))); + generator.itemModelOutput.accept( + ctx.get(), + ItemModelUtils.composite( + ItemModelUtils.plainModel(model), + ItemModelUtils.specialModel(model, StorageFluidPortItemRenderer.Unbaked.INSTANCE) + ) + ); } }) .build() @@ -5437,9 +5413,13 @@ public void accept(DataGenContext ctx, RegistrumItem .model(() -> new NonNullBiConsumer<>() { @Override public void accept(DataGenContext ctx, RegistrumItemModelGenerator generator) { - generator.itemModelOutput.accept(ctx.get(), - ItemModelUtils.specialModel(AnvilCraft.of("block/monolith_core"), - new MonolithItemRenderer.Unbaked(ctx.get().getBlock()))); + generator.itemModelOutput.accept( + ctx.get(), + ItemModelUtils.specialModel( + AnvilCraft.of("block/monolith_core"), + new MonolithItemRenderer.Unbaked(ctx.get().getBlock()) + ) + ); } }) .build() @@ -5460,9 +5440,13 @@ public void accept(DataGenContext ctx, RegistrumItemModelGenera .model(() -> new NonNullBiConsumer<>() { @Override public void accept(DataGenContext ctx, RegistrumItemModelGenerator generator) { - generator.itemModelOutput.accept(ctx.get(), - ItemModelUtils.specialModel(AnvilCraft.of("block/monolith_line"), - new MonolithItemRenderer.Unbaked(ctx.get().getBlock()))); + generator.itemModelOutput.accept( + ctx.get(), + ItemModelUtils.specialModel( + AnvilCraft.of("block/monolith_line"), + new MonolithItemRenderer.Unbaked(ctx.get().getBlock()) + ) + ); } }) .build() @@ -5474,12 +5458,15 @@ public void accept(DataGenContext ctx, RegistrumItemModelGenera GiantMonolithCoreBlock::new ) .initialProperties(() -> Blocks.REINFORCED_DEEPSLATE) - .properties(properties -> properties.pushReaction(PushReaction.BLOCK)) + .properties(properties -> properties + .pushReaction(PushReaction.BLOCK) + .lightLevel(state -> 10) + .noOcclusion() + .noCollision() + .overrideLootTable(Optional.of(ResourceKey.create(Registries.LOOT_TABLE, AnvilCraft.of("blocks/giant_monolith_core")))) + ) .tag(BlockTags.WITHER_IMMUNE, BlockTags.DRAGON_IMMUNE) .loot(SimpleMultiPartBlock::loot) - .properties(properties -> properties.lightLevel(state -> 10).noOcclusion().noCollision()) - .properties(properties -> properties.overrideLootTable(Optional.of(ResourceKey.create( - Registries.LOOT_TABLE, AnvilCraft.of("blocks/giant_monolith_core"))))) .lang("Giant Monolith Core") .item(SimpleMultiPartBlockItem::new) .transform(PropertiesProviderUtil::blockItem) @@ -5491,9 +5478,13 @@ public void accept( DataGenContext> ctx, RegistrumItemModelGenerator generator ) { - generator.itemModelOutput.accept(ctx.get(), - ItemModelUtils.specialModel(AnvilCraft.of("block/giant_monolith_core"), - new MonolithItemRenderer.Unbaked(ctx.get().getBlock()))); + generator.itemModelOutput.accept( + ctx.get(), + ItemModelUtils.specialModel( + AnvilCraft.of("block/giant_monolith_core"), + new MonolithItemRenderer.Unbaked(ctx.get().getBlock()) + ) + ); } }) .build() @@ -5502,21 +5493,27 @@ public void accept( public static final BlockEntry GIANT_MONOLITH_LINE = REGISTRUM.block("giant_monolith_line", MonolithLineBlock::new) .initialProperties(() -> Blocks.REINFORCED_DEEPSLATE) - .properties(properties -> properties.pushReaction(PushReaction.BLOCK)) + .properties(properties -> properties + .pushReaction(PushReaction.BLOCK) + .lightLevel(state -> 10) + .noOcclusion() + .noCollision() + .overrideLootTable(Optional.of(ResourceKey.create(Registries.LOOT_TABLE, AnvilCraft.of("blocks/giant_monolith_line")))) + ) .tag(BlockTags.WITHER_IMMUNE, BlockTags.DRAGON_IMMUNE) - .properties(properties -> properties.lightLevel(state -> 10).noOcclusion().noCollision()) - .properties(properties -> properties.overrideLootTable(Optional.of(ResourceKey.create( - Registries.LOOT_TABLE, AnvilCraft.of("blocks/giant_monolith_line"))))) - .lang("Giant Monolith Line") .blockstate(DataGenUtil::noExtraModelOrState) .item() .transform(PropertiesProviderUtil::blockItem) .model(() -> new NonNullBiConsumer<>() { @Override public void accept(DataGenContext ctx, RegistrumItemModelGenerator generator) { - generator.itemModelOutput.accept(ctx.get(), - ItemModelUtils.specialModel(AnvilCraft.of("block/giant_monolith_line"), - new MonolithItemRenderer.Unbaked(ctx.get().getBlock()))); + generator.itemModelOutput.accept( + ctx.get(), + ItemModelUtils.specialModel( + AnvilCraft.of("block/giant_monolith_line"), + new MonolithItemRenderer.Unbaked(ctx.get().getBlock()) + ) + ); } }) .build() diff --git a/src/main/java/dev/dubhe/anvilcraft/init/item/ModFoodItems.java b/src/main/java/dev/dubhe/anvilcraft/init/item/ModFoodItems.java index b4ecef0e02..451804fb75 100644 --- a/src/main/java/dev/dubhe/anvilcraft/init/item/ModFoodItems.java +++ b/src/main/java/dev/dubhe/anvilcraft/init/item/ModFoodItems.java @@ -1,6 +1,7 @@ package dev.dubhe.anvilcraft.init.item; import dev.anvilcraft.lib.v2.registrum.util.entry.ItemEntry; +import dev.dubhe.anvilcraft.AnvilCraft; import dev.dubhe.anvilcraft.data.AnvilCraftDatagen; import dev.dubhe.anvilcraft.data.recipe.RegistrumItemRecipeLoader; import dev.dubhe.anvilcraft.init.block.ModBlocks; @@ -22,7 +23,6 @@ public class ModFoodItems { public static final ItemEntry CURSED_GOLDEN_APPLE = REGISTRUM .item("cursed_golden_apple", properties -> new CursedGoldenAppleItem(properties.food(ModFoods.CURSED_GOLDEN_APPLE))) - .lang("Cursed Golden Apple") .tag(Tags.Items.FOODS) .recipe((ctx, provider) -> ShapedRecipeBuilder.shaped(provider.getItems(), RecipeCategory.FOOD, ctx.get()) .pattern("AAA") @@ -44,8 +44,9 @@ public class ModFoodItems { .recipe(RegistrumItemRecipeLoader::chocolate) .register(); - public static final ItemEntry CHOCOLATE_BLACK = REGISTRUM - .item("chocolate_black", Item::new) + public static final ItemEntry BLACK_CHOCOLATE = REGISTRUM + .item("black_chocolate", Item::new) + .aliasFrom(AnvilCraft.of("chocolate_black")) .properties(properties -> properties .food(ModFoods.CHOCOLATE_BLACK, ModConsumables.CHOCOLATE_BLACK) ) @@ -53,8 +54,12 @@ public class ModFoodItems { .recipe(RegistrumItemRecipeLoader::chocolateBlack) .register(); - public static final ItemEntry CHOCOLATE_WHITE = REGISTRUM - .item("chocolate_white", Item::new) + @Deprecated(forRemoval = true) + public static final ItemEntry CHOCOLATE_BLACK = ModFoodItems.BLACK_CHOCOLATE; + + public static final ItemEntry WHITE_CHOCOLATE = REGISTRUM + .item("white_chocolate", Item::new) + .aliasFrom(AnvilCraft.of("chocolate_white")) .properties(properties -> properties .food(ModFoods.CHOCOLATE_WHITE, ModConsumables.CHOCOLATE_WHITE) ) @@ -62,6 +67,9 @@ public class ModFoodItems { .recipe(RegistrumItemRecipeLoader::chocolateWhite) .register(); + @Deprecated(forRemoval = true) + public static final ItemEntry CHOCOLATE_WHITE = ModFoodItems.WHITE_CHOCOLATE; + public static final ItemEntry CREAMY_BREAD_ROLL = REGISTRUM .item("creamy_bread_roll", Item::new) .properties(properties -> properties diff --git a/src/main/java/dev/dubhe/anvilcraft/init/item/ModItems.java b/src/main/java/dev/dubhe/anvilcraft/init/item/ModItems.java index 07ac014a7e..f5b7199970 100644 --- a/src/main/java/dev/dubhe/anvilcraft/init/item/ModItems.java +++ b/src/main/java/dev/dubhe/anvilcraft/init/item/ModItems.java @@ -10,7 +10,6 @@ import dev.dubhe.anvilcraft.api.amulet.Amulet; import dev.dubhe.anvilcraft.block.item.CheckValveItem; import dev.dubhe.anvilcraft.block.state.Color; -import dev.dubhe.anvilcraft.client.init.ModEquipmentAssets; import dev.dubhe.anvilcraft.client.renderer.item.DiskItemRenderer; import dev.dubhe.anvilcraft.client.renderer.item.EnergyWeaponExhaustedProperty; import dev.dubhe.anvilcraft.client.renderer.item.FilterItemRenderer; @@ -57,7 +56,6 @@ import dev.dubhe.anvilcraft.item.property.component.Merciless; import dev.dubhe.anvilcraft.item.property.component.Multiphase; import dev.dubhe.anvilcraft.item.property.component.TerminalBinding; -import dev.dubhe.anvilcraft.item.property.predicate.IntegerComponentPredicate; import dev.dubhe.anvilcraft.item.template.EmberMetalUpgradeTemplateItem; import dev.dubhe.anvilcraft.item.template.FrostMetalUpgradeTemplateItem; import dev.dubhe.anvilcraft.item.template.RoyalSteelUpgradeTemplateItem; @@ -123,26 +121,19 @@ import dev.dubhe.anvilcraft.util.dummy.DummyHolder; import dev.dubhe.anvilcraft.util.registrater.DataGenUtil; import dev.dubhe.anvilcraft.util.registrater.ModelProviderUtil; -import it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenHashMap; -import it.unimi.dsi.fastutil.objects.Object2ObjectMap; import net.minecraft.client.data.models.model.ItemModelUtils; import net.minecraft.client.data.models.model.ModelLocationUtils; import net.minecraft.client.data.models.model.ModelTemplate; import net.minecraft.client.data.models.model.ModelTemplates; import net.minecraft.client.data.models.model.TextureMapping; -import net.minecraft.client.renderer.item.properties.conditional.ComponentMatches; import net.minecraft.core.HolderLookup; import net.minecraft.core.component.DataComponentPatch; import net.minecraft.core.component.DataComponents; -import net.minecraft.core.component.predicates.DataComponentPredicate; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.core.registries.Registries; -import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceKey; -import net.minecraft.sounds.SoundEvents; import net.minecraft.tags.ItemTags; import net.minecraft.util.Unit; -import net.minecraft.world.entity.EquipmentSlot; import net.minecraft.world.item.BucketItem; import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStackTemplate; @@ -152,22 +143,20 @@ import net.minecraft.world.item.enchantment.Enchantment; import net.minecraft.world.item.enchantment.Enchantments; import net.minecraft.world.item.enchantment.ItemEnchantments; -import net.minecraft.world.item.equipment.ArmorMaterials; import net.minecraft.world.item.equipment.ArmorType; -import net.minecraft.world.item.equipment.Equippable; import net.minecraft.world.level.ItemLike; import net.neoforged.neoforge.common.Tags; import net.neoforged.neoforge.registries.RegisterEvent; +import java.util.Collections; +import java.util.EnumMap; +import java.util.Map; import java.util.Optional; import java.util.function.Function; import static dev.dubhe.anvilcraft.AnvilCraft.REGISTRUM; -@SuppressWarnings({ - "unused", - "CodeBlock2Expr" -}) +@SuppressWarnings({"unused", "CodeBlock2Expr", "Convert2Lambda"}) public class ModItems { public static final ItemEntry GUIDE_BOOK = REGISTRUM.item("guide_book", GuideBookItem::new) .properties(p -> p.stacksTo(1)) @@ -735,69 +724,45 @@ public void accept( // 升级锻造模板 public static final ItemEntry ROYAL_STEEL_UPGRADE_SMITHING_TEMPLATE = REGISTRUM - .item( - "royal_steel_upgrade_smithing_template", - RoyalSteelUpgradeTemplateItem::new - ) - .lang("Smithing Template") + .item("royal_steel_upgrade_smithing_template", RoyalSteelUpgradeTemplateItem::new) + .lang("Royal Steel Upgrade") .tag(ModItemTags.TEMPLATES) .register(); public static final ItemEntry FROST_METAL_UPGRADE_SMITHING_TEMPLATE = REGISTRUM - .item( - "frost_metal_upgrade_smithing_template", - FrostMetalUpgradeTemplateItem::new - ) - .lang("Smithing Template") + .item("frost_metal_upgrade_smithing_template", FrostMetalUpgradeTemplateItem::new) + .lang("Frost Metal Upgrade") .tag(ModItemTags.TEMPLATES) .register(); public static final ItemEntry EMBER_METAL_UPGRADE_SMITHING_TEMPLATE = REGISTRUM - .item( - "ember_metal_upgrade_smithing_template", - EmberMetalUpgradeTemplateItem::new - ) - .lang("Smithing Template") + .item("ember_metal_upgrade_smithing_template", EmberMetalUpgradeTemplateItem::new) + .lang("Ember Metal Upgrade") .tag(ModItemTags.TEMPLATES) .register(); public static final ItemEntry PERMUTATION_TEMPLATE = REGISTRUM - .item( - "permutation_smithing_template", - PermutationTemplateItem::new - ) + .item("permutation_smithing_template", PermutationTemplateItem::new) .recipe(RegistrumItemRecipeLoader::permutationTemplateItem) .initialProperties(() -> new Item.Properties().fireResistant()) .tag(ModItemTags.TEMPLATES, ModItemTags.EXPLOSION_PROOF) .register(); public static final ItemEntry DEFORMATION_TEMPLATE = REGISTRUM - .item( - "deformation_smithing_template", - DeformationTemplateItem::new - ) + .item("deformation_smithing_template", DeformationTemplateItem::new) .recipe(RegistrumItemRecipeLoader::deformationTemplateItem) .initialProperties(() -> new Item.Properties().fireResistant()) .tag(ModItemTags.TEMPLATES, ModItemTags.EXPLOSION_PROOF) .register(); public static final ItemEntry TWO_TO_ONE_SMITHING_TEMPLATE = REGISTRUM - .item( - "two_to_one_smithing_template", - TwoToOneTemplateItem::new - ) + .item("two_to_one_smithing_template", TwoToOneTemplateItem::new) .lang("Two to One Smithing Template") .tag(ModItemTags.MULTIPLE_TO_ONE_SMITHING_TEMPLATES) .register(); public static final ItemEntry FOUR_TO_ONE_SMITHING_TEMPLATE = REGISTRUM - .item( - "four_to_one_smithing_template", - FourToOneTemplateItem::new - ) + .item("four_to_one_smithing_template", FourToOneTemplateItem::new) .lang("Four to One Smithing Template") .tag(ModItemTags.MULTIPLE_TO_ONE_SMITHING_TEMPLATES) .register(); public static final ItemEntry EIGHT_TO_ONE_SMITHING_TEMPLATE = REGISTRUM - .item( - "eight_to_one_smithing_template", - EightToOneTemplateItem::new - ) + .item("eight_to_one_smithing_template", EightToOneTemplateItem::new) .lang("Eight to One Smithing Template") .tag(ModItemTags.MULTIPLE_TO_ONE_SMITHING_TEMPLATES) .register(); @@ -843,7 +808,6 @@ public void accept(DataGenContext ctx, RegistrumItemModelGener .register(); public static final ItemEntry BUILDING_ROD = REGISTRUM.item("building_rod", BuildingRodItem::new) - .lang("Building Rod") .model(DataGenUtil::buildingRod) .recipe(RegistrumItemRecipeLoader::buildingRod) .register(); @@ -878,6 +842,7 @@ public void accept(DataGenContext ctx, RegistrumItemModelGener .recipe(RegistrumItemRecipeLoader::totemOfRage) .register(); + @SuppressWarnings("SameParameterValue") private static ItemEntry createAmuletItem( String type, ResourceKey amulet, @@ -1002,8 +967,9 @@ private static ItemEntry createBigAmuletItem(String type, Resour .model(DataGenUtil::onlyInfo) .tag(ModItemTags.CAPACITOR) .register(); - public static final ItemEntry CAPACITOR_EMPTY = REGISTRUM.item("capacitor_empty", EmptyCapacitorItem::new) - .lang("Empty Capacitor") + public static final ItemEntry CAPACITOR_EMPTY = REGISTRUM + .item("empty_capacitor", EmptyCapacitorItem::new) + .aliasFrom(AnvilCraft.of("capacitor_empty")) .model(DataGenUtil::onlyInfo) .tag(ModItemTags.CAPACITOR) .recipe(RegistrumItemRecipeLoader::capacitorEmpty) @@ -1012,11 +978,8 @@ private static ItemEntry createBigAmuletItem(String type, Resour .model(DataGenUtil::onlyInfo) .register(); public static final ItemEntry SUPER_CAPACITOR_EMPTY = REGISTRUM - .item( - "supercapacitor_empty", - EmptySuperCapacitorItem::new - ) - .lang("Empty Supercapacitor") + .item("empty_supercapacitor", EmptySuperCapacitorItem::new) + .aliasFrom(AnvilCraft.of("supercapacitor_empty")) .model(DataGenUtil::onlyInfo) .register(); @@ -1025,7 +988,6 @@ private static ItemEntry createBigAmuletItem(String type, Resour public static final ItemEntry FLUID_TANK_MINECART = REGISTRUM .item("fluid_tank_minecart", FluidTankMinecartItem::new) - .lang("Fluid Tank Minecart") .recipe(RegistrumItemRecipeLoader::fluidTankMinecart) .register(); @@ -1149,19 +1111,13 @@ public void accept( .tag(ItemTags.PIGLIN_LOVED, Tags.Items.NUGGETS) .recipe(RegistrumItemRecipeLoader::cursedGoldNugget) .register(); - public static final ItemEntry ENCHANTED_GOLD_INGOT = REGISTRUM.item( - "enchanted_gold_ingot", - EnchantedGoldIngotItem::new - ) - .lang("Enchanted Gold Ingot") + public static final ItemEntry ENCHANTED_GOLD_INGOT = REGISTRUM + .item("enchanted_gold_ingot", EnchantedGoldIngotItem::new) .tag(ItemTags.BEACON_PAYMENT_ITEMS, ItemTags.PIGLIN_LOVED, Tags.Items.INGOTS, ModItemTags.ENCHANTED_GOLD) .recipe(RegistrumItemRecipeLoader::enchantedGoldIngot) .register(); - public static final ItemEntry ENCHANTED_GOLD_NUGGET = REGISTRUM.item( - "enchanted_gold_nugget", - EnchantedGoldItem::new - ) - .lang("Enchanted Gold Nugget") + public static final ItemEntry ENCHANTED_GOLD_NUGGET = REGISTRUM + .item("enchanted_gold_nugget", EnchantedGoldItem::new) .tag(ItemTags.PIGLIN_LOVED, Tags.Items.NUGGETS, ModItemTags.ENCHANTED_GOLD) .recipe(RegistrumItemRecipeLoader::enchantedGoldNugget) .register(); @@ -1505,16 +1461,15 @@ public void accept( .register(); public static final ItemEntry LEGACY_ESSENCE = REGISTRUM.item("legacy_essence", Item::new) - .lang("Legacy Essence") .register(); public static final ItemEntry CIVILIZATION_CATALYST = REGISTRUM.item("civilization_catalyst", Item::new) - .lang("Civilization Catalyst") .recipe(RegistrumItemRecipeLoader::civilizationCatalyst) .register(); public static final ItemEntry EXP_BUCKET = REGISTRUM .item("exp_bucket", p -> new BucketItem(ModFluids.EXP_FLUID.get(), p)) + .lang("EXP Bucket") .tag(ModItemTags.EXP_BUCKETS, Tags.Items.BUCKETS) .initialProperties(() -> new Item.Properties().stacksTo(1).craftRemainder(Items.BUCKET)) .model(ModelProviderUtil::bucket) @@ -1526,15 +1481,15 @@ public void accept( .model(ModelProviderUtil::bucket) .register(); - public static final Object2ObjectMap> CEMENT_BUCKETS = ModItems.registerAllCementBuckets(); + public static final Map> CEMENT_BUCKETS; - private static Object2ObjectMap> registerAllCementBuckets() { - Object2ObjectMap> map = new Object2ObjectLinkedOpenHashMap<>(); + static { + EnumMap> map = new EnumMap<>(Color.class); for (Color color : Color.values()) { var entry = ModItems.registerCementBucket(color); map.put(color, entry); } - return map; + CEMENT_BUCKETS = Collections.unmodifiableMap(map); } private static ItemEntry registerCementBucket(Color color) { @@ -1555,7 +1510,6 @@ private static ItemEntry registerCementBucket(Color color) { public static final ItemEntry HYDROGEN_BUCKET = REGISTRUM .item("hydrogen_bucket", p -> new BucketItem(ModFluids.HYDROGEN.get(), p)) .tag(Tags.Items.BUCKETS) - .lang("Hydrogen Bucket") .properties(properties -> properties.stacksTo(1).craftRemainder(Items.BUCKET)) .model(ModelProviderUtil::bucketGassy) .register(); @@ -1563,7 +1517,6 @@ private static ItemEntry registerCementBucket(Color color) { public static final ItemEntry OXYGEN_BUCKET = REGISTRUM .item("oxygen_bucket", p -> new BucketItem(ModFluids.OXYGEN.get(), p)) .tag(Tags.Items.BUCKETS) - .lang("Oxygen Bucket") .properties(properties -> properties.stacksTo(1).craftRemainder(Items.BUCKET)) .model(ModelProviderUtil::bucketGassy) .register(); @@ -1571,7 +1524,6 @@ private static ItemEntry registerCementBucket(Color color) { public static final ItemEntry HELIUM_BUCKET = REGISTRUM .item("helium_bucket", p -> new BucketItem(ModFluids.HELIUM.get(), p)) .tag(Tags.Items.BUCKETS) - .lang("Helium Bucket") .properties(properties -> properties.stacksTo(1).craftRemainder(Items.BUCKET)) .model(ModelProviderUtil::bucketGassy) .register(); @@ -1579,7 +1531,6 @@ private static ItemEntry registerCementBucket(Color color) { public static final ItemEntry DEUTERIUM_BUCKET = REGISTRUM .item("deuterium_bucket", p -> new BucketItem(ModFluids.DEUTERIUM.get(), p)) .tag(Tags.Items.BUCKETS) - .lang("Deuterium Bucket") .properties(properties -> properties.stacksTo(1).craftRemainder(Items.BUCKET)) .model(ModelProviderUtil::bucketGassy) .register(); @@ -1587,7 +1538,6 @@ private static ItemEntry registerCementBucket(Color color) { public static final ItemEntry XENON_BUCKET = REGISTRUM .item("xenon_bucket", p -> new BucketItem(ModFluids.XENON.get(), p)) .tag(Tags.Items.BUCKETS) - .lang("Xenon Bucket") .properties(properties -> properties.stacksTo(1).craftRemainder(Items.BUCKET)) .model(ModelProviderUtil::bucketGassy) .register(); @@ -1595,7 +1545,6 @@ private static ItemEntry registerCementBucket(Color color) { public static final ItemEntry KRYPTON_BUCKET = REGISTRUM .item("krypton_bucket", p -> new BucketItem(ModFluids.KRYPTON.get(), p)) .tag(Tags.Items.BUCKETS) - .lang("Krypton Bucket") .properties(properties -> properties.stacksTo(1).craftRemainder(Items.BUCKET)) .model(ModelProviderUtil::bucketGassy) .register(); @@ -1603,7 +1552,6 @@ private static ItemEntry registerCementBucket(Color color) { public static final ItemEntry PRIMORDIAL_MATTER_BUCKET = REGISTRUM .item("primordial_matter_bucket", p -> new BucketItem(ModFluids.PRIMORDIAL_MATTER.get(), p)) .tag(Tags.Items.BUCKETS) - .lang("Primordial Matter Bucket") .properties(properties -> properties.stacksTo(1).craftRemainder(Items.BUCKET)) .model(ModelProviderUtil::bucketGassy) .register(); @@ -1616,7 +1564,6 @@ private static ItemEntry registerCementBucket(Color color) { public static final ItemEntry GLASS_PIPE = REGISTRUM .item("glass_pipe", properties -> new PipeBlockItem(properties, ModBlocks.GLASS_PIPE_STRAIGHT)) - .lang("Glass Pipe") .model(DataGenUtil::onlyInfo) .tag(ModItemTags.DISALLOW_HAND_INSERT_INTO_TANK) .register(); diff --git a/src/main/java/dev/dubhe/anvilcraft/init/item/tabs/ItemsSections.java b/src/main/java/dev/dubhe/anvilcraft/init/item/tabs/ItemsSections.java index b9d9260872..376bad55c5 100644 --- a/src/main/java/dev/dubhe/anvilcraft/init/item/tabs/ItemsSections.java +++ b/src/main/java/dev/dubhe/anvilcraft/init/item/tabs/ItemsSections.java @@ -156,8 +156,8 @@ public void accept() { content -> { content.accept(ModFoodItems.CURSED_GOLDEN_APPLE); content.accept(ModFoodItems.CHOCOLATE); - content.accept(ModFoodItems.CHOCOLATE_BLACK); - content.accept(ModFoodItems.CHOCOLATE_WHITE); + content.accept(ModFoodItems.BLACK_CHOCOLATE); + content.accept(ModFoodItems.WHITE_CHOCOLATE); content.accept(ModFoodItems.CREAMY_BREAD_ROLL); content.accept(ModFoodItems.BEEF_MUSHROOM_STEW); content.accept(ModFoodItems.PILL); diff --git a/src/main/java/dev/dubhe/anvilcraft/init/item/tabs/ToolsAndUtilities.java b/src/main/java/dev/dubhe/anvilcraft/init/item/tabs/ToolsAndUtilities.java index 800605b481..9e405e9048 100644 --- a/src/main/java/dev/dubhe/anvilcraft/init/item/tabs/ToolsAndUtilities.java +++ b/src/main/java/dev/dubhe/anvilcraft/init/item/tabs/ToolsAndUtilities.java @@ -116,8 +116,8 @@ public void accept() { // Food and consumables. Ingredient foods also appear in Ingredients. this.plain(ModFoodItems.CURSED_GOLDEN_APPLE); this.plain(ModFoodItems.CHOCOLATE); - this.plain(ModFoodItems.CHOCOLATE_BLACK); - this.plain(ModFoodItems.CHOCOLATE_WHITE); + this.plain(ModFoodItems.BLACK_CHOCOLATE); + this.plain(ModFoodItems.WHITE_CHOCOLATE); this.plain(ModFoodItems.CREAMY_BREAD_ROLL); this.plain(ModFoodItems.BEEF_MUSHROOM_STEW); this.plain(ModFoodItems.PILL); diff --git a/src/main/java/dev/dubhe/anvilcraft/integration/jei/category/JewelCraftingCategory.java b/src/main/java/dev/dubhe/anvilcraft/integration/jei/category/JewelCraftingCategory.java index 6780baf62f..cd5ffa0d2d 100644 --- a/src/main/java/dev/dubhe/anvilcraft/integration/jei/category/JewelCraftingCategory.java +++ b/src/main/java/dev/dubhe/anvilcraft/integration/jei/category/JewelCraftingCategory.java @@ -25,7 +25,6 @@ import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.crafting.Recipe; import net.minecraft.world.item.crafting.RecipeHolder; -import org.jspecify.annotations.Nullable; import java.util.ArrayList; import java.util.HashSet; @@ -69,19 +68,19 @@ public int getHeight() { } @Override - public @Nullable IDrawable getIcon() { + public IDrawable getIcon() { return this.icon; } @Override public void setRecipe(IRecipeLayoutBuilder builder, RecipeHolder recipe, IFocusGroup focuses) { - builder.addSlot(RecipeIngredientRole.INPUT, 59, 11).addItemStack(recipe.value().result().create().copyWithCount(1)); + builder.addSlot(RecipeIngredientRole.INPUT, 59, 11).add(recipe.value().result().create().copyWithCount(1)); for (int i = 0; i < recipe.value().mergedIngredients().size(); i++) { var entry = recipe.value().mergedIngredients().get(i); builder.addSlot(RecipeIngredientRole.INPUT, 5 + i * 18, 37).addItemStacks(entry.getKey().getValues().stream() .map(holder -> new ItemStack(holder.value(), entry.getIntValue())).toList()); } - builder.addSlot(RecipeIngredientRole.OUTPUT, 135, 24).addItemStack(recipe.value().result().create()); + builder.addSlot(RecipeIngredientRole.OUTPUT, 135, 24).add(recipe.value().result().create()); } @Override diff --git a/src/main/java/dev/dubhe/anvilcraft/integration/jei/category/MineralFountainCategory.java b/src/main/java/dev/dubhe/anvilcraft/integration/jei/category/MineralFountainCategory.java index 7f6424ee77..b6cde92419 100644 --- a/src/main/java/dev/dubhe/anvilcraft/integration/jei/category/MineralFountainCategory.java +++ b/src/main/java/dev/dubhe/anvilcraft/integration/jei/category/MineralFountainCategory.java @@ -97,37 +97,37 @@ public Component getTitle() { @Override public int getWidth() { - return WIDTH; + return MineralFountainCategory.WIDTH; } @Override public int getHeight() { - return HEIGHT; + return MineralFountainCategory.HEIGHT; } @Override - public @Nullable IDrawable getIcon() { + public IDrawable getIcon() { return this.icon; } @Override public void setRecipe(IRecipeLayoutBuilder builder, MineralFountainJeiRecipe recipe, IFocusGroup focuses) { List sideSlots = recipe.sideSlots(); - for (int i = 0; i < SIDE_SLOT_AREAS.length; i++) { + for (int i = 0; i < MineralFountainCategory.SIDE_SLOT_AREAS.length; i++) { if (i >= sideSlots.size()) break; MineralFountainJeiRecipe.SideRequirement side = sideSlots.get(i); - int[] area = SIDE_SLOT_AREAS[i]; + int[] area = MineralFountainCategory.SIDE_SLOT_AREAS[i]; JeiBlockIngredientUtil.addSlot( builder, RecipeIngredientRole.INPUT, - SIDE_BLOCK_PREFIX + i, + MineralFountainCategory.SIDE_BLOCK_PREFIX + i, area[0], area[1], area[2], area[3], JeiBlockIngredientUtil.toItemStacks(side.states()), JeiBlockIngredientUtil.toFluidStacks(side.states()) - ).addRichTooltipCallback((slot, tooltip) -> tooltip.add( + ).addRichTooltipCallback((_, tooltip) -> tooltip.add( Component.translatable( "gui.anvilcraft.category.mineral_fountain.side_count", side.count() @@ -138,7 +138,7 @@ public void setRecipe(IRecipeLayoutBuilder builder, MineralFountainJeiRecipe rec List fromStacks = JeiBlockIngredientUtil.toItemStacks(recipe.fromBlocks()); if (!fromStacks.isEmpty()) { JeiBlockIngredientUtil.addSlot( - builder, RecipeIngredientRole.INPUT, FROM_BLOCK, 40, 28, 16, 13, fromStacks + builder, RecipeIngredientRole.INPUT, MineralFountainCategory.FROM_BLOCK, 40, 28, 16, 13, fromStacks ); } @@ -146,7 +146,7 @@ public void setRecipe(IRecipeLayoutBuilder builder, MineralFountainJeiRecipe rec JeiBlockIngredientUtil.addSlot( builder, RecipeIngredientRole.OUTPUT, - OUTPUT_BLOCK, + MineralFountainCategory.OUTPUT_BLOCK, 118, 28, 16, @@ -157,17 +157,17 @@ public void setRecipe(IRecipeLayoutBuilder builder, MineralFountainJeiRecipe rec BlockState displayed = JeiBlockIngredientUtil.toBlockState( slot.getDisplayedIngredient().orElse(null), outcomeStates ); - tooltip.addAll(getChanceTooltips( + tooltip.addAll(MineralFountainCategory.getChanceTooltips( recipe, displayed == null ? outcomeStates.getFirst() : displayed )); if (recipe.dimension() != null) { - tooltip.add(getDimensionName(recipe.dimension()).copy().withStyle(ChatFormatting.GRAY)); + tooltip.add(MineralFountainCategory.getDimensionName(recipe.dimension()).copy().withStyle(ChatFormatting.GRAY)); } }); if (!recipe.fluids().isEmpty()) { IIngredientAcceptor invisible = builder.addInvisibleIngredients(RecipeIngredientRole.OUTPUT); - recipe.fluids().forEach(fluid -> invisible.addFluidStack( + recipe.fluids().forEach(fluid -> invisible.add( fluid.getFluid(), fluid.getAmount(), fluid.getComponentsPatch() )); } @@ -189,7 +189,7 @@ public void draw( List sideSlots = recipe.sideSlots(); for (int i = 0; i < Math.min(2, sideSlots.size()); i++) { - renderSideSlot(guiGraphics, recipeSlotsView, sideSlots, i); + MineralFountainCategory.renderSideSlot(guiGraphics, recipeSlotsView, sideSlots, i); } RenderSupport.renderBlockAt( @@ -197,21 +197,22 @@ public void draw( ModBlocks.MINERAL_FOUNTAIN.getDefaultState(), 48, 50, - BLOCK_SCALE + MineralFountainCategory.BLOCK_SCALE ); for (int i = 2; i < Math.min(4, sideSlots.size()); i++) { - renderSideSlot(guiGraphics, recipeSlotsView, sideSlots, i); + MineralFountainCategory.renderSideSlot(guiGraphics, recipeSlotsView, sideSlots, i); } if (!recipe.fromBlocks().isEmpty()) { - JeiBlockIngredientUtil.getDisplayedState(recipeSlotsView, FROM_BLOCK, recipe.fromBlocks()).ifPresent(state -> + JeiBlockIngredientUtil.getDisplayedState(recipeSlotsView, + MineralFountainCategory.FROM_BLOCK, recipe.fromBlocks()).ifPresent(state -> RenderSupport.renderBlockAt( guiGraphics, state, 48, 39.5f, - BLOCK_SCALE + MineralFountainCategory.BLOCK_SCALE ) ); } @@ -221,11 +222,11 @@ public void draw( ModBlocks.MINERAL_FOUNTAIN.getDefaultState(), 126, 50, - BLOCK_SCALE + MineralFountainCategory.BLOCK_SCALE ); BlockState resultState = JeiBlockIngredientUtil.toBlockState( - JeiBlockIngredientUtil.getDisplayedIngredient(recipeSlotsView, OUTPUT_BLOCK).orElse(null), + JeiBlockIngredientUtil.getDisplayedIngredient(recipeSlotsView, MineralFountainCategory.OUTPUT_BLOCK).orElse(null), recipe.outcomeStates() ); if (resultState == null) resultState = recipe.outcomeStates().getFirst(); @@ -234,19 +235,19 @@ public void draw( resultState, 126, 39.5f, - BLOCK_SCALE + MineralFountainCategory.BLOCK_SCALE ); this.arrow.draw(guiGraphics, 82, 37); if (recipe.dimension() != null) { - Component dimensionName = getDimensionName(recipe.dimension()).copy().withStyle(ChatFormatting.WHITE); + Component dimensionName = MineralFountainCategory.getDimensionName(recipe.dimension()).copy().withStyle(ChatFormatting.WHITE); guiGraphics.centeredText(Minecraft.getInstance().font, dimensionName, 126, 65, 0xFFFFFFFF); } } @Override - public @Nullable Identifier getRegistryName(MineralFountainJeiRecipe recipe) { + public Identifier getIdentifier(MineralFountainJeiRecipe recipe) { return recipe.id(); } @@ -261,18 +262,18 @@ public static void registerRecipes(IRecipeRegistration registration) { Map>> activeGroups = new LinkedHashMap<>(); for (RecipeHolder holder : activeRecipes) { - activeGroups.computeIfAbsent(activeGroupKey(holder.value()), key -> new ArrayList<>()).add(holder); + activeGroups.computeIfAbsent(MineralFountainCategory.activeGroupKey(holder.value()), _ -> new ArrayList<>()).add(holder); } for (List> group : activeGroups.values()) { - displays.add(mergeActive(group)); + displays.add(MineralFountainCategory.mergeActive(group)); } Map>> passiveGroups = new LinkedHashMap<>(); for (RecipeHolder holder : passiveRecipes) { - passiveGroups.computeIfAbsent(passiveGroupKey(holder.value()), key -> new ArrayList<>()).add(holder); + passiveGroups.computeIfAbsent(MineralFountainCategory.passiveGroupKey(holder.value()), _ -> new ArrayList<>()).add(holder); } for (List> group : passiveGroups.values()) { - displays.add(mergePassive(group)); + displays.add(MineralFountainCategory.mergePassive(group)); } Map activeById = new LinkedHashMap<>(); @@ -284,7 +285,7 @@ public static void registerRecipes(IRecipeRegistration registration) { MineralFountainReplacementRecipe recipe = holder.value(); displays.add(new MineralFountainJeiRecipe( holder.id().identifier(), - replacementAround(recipe, activeById), + MineralFountainCategory.replacementAround(recipe, activeById), recipe.getFromBlock().constructStatesForRender(), List.of(new MineralFountainJeiRecipe.Outcome( recipe.getToBlock().state(), NumberProviderUtil.expected(recipe.getToBlock().chance()) @@ -292,7 +293,7 @@ public static void registerRecipes(IRecipeRegistration registration) { recipe.getToFluid().map(FluidStackTemplate::create).map(List::of).orElse(List.of()), recipe.getDimension().orElse(null), recipe.getReplaceChance(), - replacementTarget(recipe) + MineralFountainCategory.replacementTarget(recipe) )); } @@ -308,13 +309,13 @@ private static MineralFountainJeiRecipe mergeActive(List around) { return around.stream() - .map(requirement -> requirement.count() + "x" + predicateKey(requirement.block())) + .map(requirement -> requirement.count() + "x" + MineralFountainCategory.predicateKey(requirement.block())) .collect(Collectors.joining(",")); } @@ -415,7 +416,7 @@ private static List getChanceTooltips(MineralFountainJeiRecipe recipe tooltips.add( Component.translatable( "gui.anvilcraft.category.chance", - formatPercentage(chance) + MineralFountainCategory.formatPercentage(chance) ).withStyle(ChatFormatting.GRAY) ); } @@ -423,7 +424,7 @@ private static List getChanceTooltips(MineralFountainJeiRecipe recipe tooltips.add( Component.translatable( "gui.anvilcraft.category.mineral_fountain.replace_chance", - formatPercentage(recipe.replacementChance()) + MineralFountainCategory.formatPercentage(recipe.replacementChance()) ).withStyle(ChatFormatting.GRAY) ); if (recipe.replacementTarget() != null) { @@ -439,10 +440,10 @@ private static List getChanceTooltips(MineralFountainJeiRecipe recipe } private static String formatPercentage(double chance) { - String percentage = FORMATTER.format(chance * 100); - if (chance < 1 && percentage.equals(FORMATTER.format(100))) { + String percentage = MineralFountainCategory.FORMATTER.format(chance * 100); + if (chance < 1 && percentage.equals(MineralFountainCategory.FORMATTER.format(100))) { BigDecimal exact = BigDecimal.valueOf(chance).movePointRight(2); - DecimalFormat localized = (DecimalFormat) FORMATTER.clone(); + DecimalFormat localized = (DecimalFormat) MineralFountainCategory.FORMATTER.clone(); localized.setMaximumFractionDigits(Math.max(0, exact.scale())); return localized.format(exact); } @@ -457,7 +458,7 @@ private static List replacementAround( int count = 0; for (Map.Entry entry : activeById.entrySet()) { if (!recipe.appliesTo(entry.getKey())) continue; - if (!sharesFromBlock(recipe.getFromBlock(), entry.getValue().getFromBlock())) continue; + if (!MineralFountainCategory.sharesFromBlock(recipe.getFromBlock(), entry.getValue().getFromBlock())) continue; for (AroundRequirement requirement : entry.getValue().getAround()) { states.addAll(requirement.block().constructStatesForRender()); count = Math.max(count, requirement.count()); @@ -485,7 +486,7 @@ private static List sideRequirements(M } public static void registerRecipeCatalysts(IRecipeCatalystRegistration registration) { - registration.addRecipeCatalyst(ModBlocks.MINERAL_FOUNTAIN.asStack(), AnvilCraftJeiPlugin.MINERAL_FOUNTAIN); + registration.addCraftingStation(AnvilCraftJeiPlugin.MINERAL_FOUNTAIN, ModBlocks.MINERAL_FOUNTAIN.asStack()); } private static void renderSideSlot( @@ -496,21 +497,21 @@ private static void renderSideSlot( ) { MineralFountainJeiRecipe.SideRequirement side = sideSlots.get(index); BlockState state = JeiBlockIngredientUtil.toBlockState( - JeiBlockIngredientUtil.getDisplayedIngredient(recipeSlotsView, SIDE_BLOCK_PREFIX + index).orElse(null), + JeiBlockIngredientUtil.getDisplayedIngredient(recipeSlotsView, MineralFountainCategory.SIDE_BLOCK_PREFIX + index).orElse(null), side.states() ); if (state == null) state = side.states().getFirst(); - renderSideBlock(guiGraphics, state, index); + MineralFountainCategory.renderSideBlock(guiGraphics, state, index); } private static void renderSideBlock(GuiGraphicsExtractor guiGraphics, BlockState state, int index) { - int[] position = SIDE_POSITIONS[index]; + int[] position = MineralFountainCategory.SIDE_POSITIONS[index]; RenderSupport.renderBlockAt( guiGraphics, state, position[0], position[1], - BLOCK_SCALE + MineralFountainCategory.BLOCK_SCALE ); } diff --git a/src/main/resources/assets/anvilcraft/ageratum/en_us/002_material/101_capacitor.md b/src/main/resources/assets/anvilcraft/ageratum/en_us/002_material/101_capacitor.md index e5c645e8f3..538da1d7df 100644 --- a/src/main/resources/assets/anvilcraft/ageratum/en_us/002_material/101_capacitor.md +++ b/src/main/resources/assets/anvilcraft/ageratum/en_us/002_material/101_capacitor.md @@ -4,29 +4,29 @@ navigation: icon: "anvilcraft:capacitor" items: - anvilcraft:capacitor - - anvilcraft:capacitor_empty + - anvilcraft:empty_capacitor - anvilcraft:supercapacitor - - anvilcraft:supercapacitor_empty + - anvilcraft:empty_supercapacitor --- # Capacitor - + - + # - Can work with to store or release electrical energy - + - + # @@ -37,11 +37,11 @@ The resin block must contain a Creeper If it is a charged version, there is a 50% chance of a massive explosion, and a 50% chance of obtaining a fully charged capacitor - + - + ## Salvaging diff --git a/src/main/resources/assets/anvilcraft/ageratum/en_us/003_power/102_power_charge.md b/src/main/resources/assets/anvilcraft/ageratum/en_us/003_power/102_power_charge.md index 4d56301f1d..75adcae526 100644 --- a/src/main/resources/assets/anvilcraft/ageratum/en_us/003_power/102_power_charge.md +++ b/src/main/resources/assets/anvilcraft/ageratum/en_us/003_power/102_power_charge.md @@ -39,14 +39,14 @@ items: - + --- - + --- diff --git a/src/main/resources/assets/anvilcraft/ageratum/en_us/006_prop/011_chocolate.md b/src/main/resources/assets/anvilcraft/ageratum/en_us/006_prop/011_chocolate.md index 52451d283b..2e53d8915f 100644 --- a/src/main/resources/assets/anvilcraft/ageratum/en_us/006_prop/011_chocolate.md +++ b/src/main/resources/assets/anvilcraft/ageratum/en_us/006_prop/011_chocolate.md @@ -7,11 +7,11 @@ items: - anvilcraft:chocolate_block - anvilcraft:chocolate_slab - anvilcraft:chocolate_stairs - - anvilcraft:chocolate_black + - anvilcraft:black_chocolate - anvilcraft:black_chocolate_block - anvilcraft:black_chocolate_slab - anvilcraft:black_chocolate_stairs - - anvilcraft:chocolate_white + - anvilcraft:white_chocolate - anvilcraft:white_chocolate_block - anvilcraft:white_chocolate_slab - anvilcraft:white_chocolate_stairs @@ -38,13 +38,13 @@ items: - + - + @@ -53,8 +53,8 @@ items: # Eating - : 2 Hunger + 16 Saturation + 30s Speed IV -- : 2 Hunger + 8 Saturation + 30s Speed II + 30s Haste III -- : 2 Hunger + 8 Saturation + 30s Speed II + 30s Jump Boost IV +- : 2 Hunger + 8 Saturation + 30s Speed II + 30s Haste III +- : 2 Hunger + 8 Saturation + 30s Speed II + 30s Jump Boost IV Can be eaten even when full @@ -69,16 +69,16 @@ Can be eaten even when full --- - - + + # Chocolate Blocks Standing on chocolate blocks/stairs/slabs continuously grants effects: - : Speed 10 -- : Speed 5 + Haste 4 -- : Speed 5 + Jump Boost 6 +- : Speed 5 + Haste 4 +- : Speed 5 + Jump Boost 6 - : Speed 5 + Jump Boost 6 + Haste 4 diff --git a/src/main/resources/assets/anvilcraft/ageratum/zh_cn/002_material/101_capacitor.md b/src/main/resources/assets/anvilcraft/ageratum/zh_cn/002_material/101_capacitor.md index d8827a4815..814385c806 100644 --- a/src/main/resources/assets/anvilcraft/ageratum/zh_cn/002_material/101_capacitor.md +++ b/src/main/resources/assets/anvilcraft/ageratum/zh_cn/002_material/101_capacitor.md @@ -4,29 +4,29 @@ navigation: icon: "anvilcraft:capacitor" items: - anvilcraft:capacitor - - anvilcraft:capacitor_empty + - anvilcraft:empty_capacitor - anvilcraft:supercapacitor - - anvilcraft:supercapacitor_empty + - anvilcraft:empty_supercapacitor --- # 电容器 - + - + # - 能够配合存储电能或释放电能 - + - + # @@ -37,11 +37,11 @@ items: 若为高压版本,有50%概率发生大爆炸、有50%概率获得充满的电容器 - + - + ## 拆解 diff --git a/src/main/resources/assets/anvilcraft/ageratum/zh_cn/003_power/102_power_charge.md b/src/main/resources/assets/anvilcraft/ageratum/zh_cn/003_power/102_power_charge.md index 1c2ee70814..5478153c68 100644 --- a/src/main/resources/assets/anvilcraft/ageratum/zh_cn/003_power/102_power_charge.md +++ b/src/main/resources/assets/anvilcraft/ageratum/zh_cn/003_power/102_power_charge.md @@ -39,14 +39,14 @@ items: - + --- - + --- diff --git a/src/main/resources/assets/anvilcraft/ageratum/zh_cn/006_prop/011_chocolate.md b/src/main/resources/assets/anvilcraft/ageratum/zh_cn/006_prop/011_chocolate.md index ea75cc0d10..da6f80172c 100644 --- a/src/main/resources/assets/anvilcraft/ageratum/zh_cn/006_prop/011_chocolate.md +++ b/src/main/resources/assets/anvilcraft/ageratum/zh_cn/006_prop/011_chocolate.md @@ -7,11 +7,11 @@ items: - anvilcraft:chocolate_block - anvilcraft:chocolate_slab - anvilcraft:chocolate_stairs - - anvilcraft:chocolate_black + - anvilcraft:black_chocolate - anvilcraft:black_chocolate_block - anvilcraft:black_chocolate_slab - anvilcraft:black_chocolate_stairs - - anvilcraft:chocolate_white + - anvilcraft:white_chocolate - anvilcraft:white_chocolate_block - anvilcraft:white_chocolate_slab - anvilcraft:white_chocolate_stairs @@ -38,13 +38,13 @@ items: - + - + @@ -53,8 +53,8 @@ items: # 食用 - :2 饥饿值 + 16 饱和度 + 30s 迅捷IV -- :2 饥饿值 + 8 饱和度 + 30s 迅捷II + 30s 急迫III -- :2 饥饿值 + 8 饱和度 + 30s 迅捷II + 30s 跳跃提升IV +- :2 饥饿值 + 8 饱和度 + 30s 迅捷II + 30s 急迫III +- :2 饥饿值 + 8 饱和度 + 30s 迅捷II + 30s 跳跃提升IV 饱了也能吃 @@ -69,8 +69,8 @@ items: --- - - + + # 巧克力方块 @@ -78,8 +78,8 @@ items: 站在巧克力块/楼梯/台阶上可以持续获得效果: - :迅捷10 -- :迅捷5 + 急迫4 -- :迅捷5 + 跳跃提升6 +- :迅捷5 + 急迫4 +- :迅捷5 + 跳跃提升6 - : 迅捷5 + 跳跃提升6 + 急迫4 diff --git a/src/main/resources/assets/anvilcraft/textures/item/chocolate_black.png b/src/main/resources/assets/anvilcraft/textures/item/black_chocolate.png similarity index 100% rename from src/main/resources/assets/anvilcraft/textures/item/chocolate_black.png rename to src/main/resources/assets/anvilcraft/textures/item/black_chocolate.png diff --git a/src/main/resources/assets/anvilcraft/textures/item/capacitor_empty.png b/src/main/resources/assets/anvilcraft/textures/item/empty_capacitor.png similarity index 100% rename from src/main/resources/assets/anvilcraft/textures/item/capacitor_empty.png rename to src/main/resources/assets/anvilcraft/textures/item/empty_capacitor.png diff --git a/src/main/resources/assets/anvilcraft/textures/item/supercapacitor_empty.png b/src/main/resources/assets/anvilcraft/textures/item/empty_supercapacitor.png similarity index 100% rename from src/main/resources/assets/anvilcraft/textures/item/supercapacitor_empty.png rename to src/main/resources/assets/anvilcraft/textures/item/empty_supercapacitor.png diff --git a/src/main/resources/assets/anvilcraft/textures/item/hardend_resin.png b/src/main/resources/assets/anvilcraft/textures/item/hardened_resin.png similarity index 100% rename from src/main/resources/assets/anvilcraft/textures/item/hardend_resin.png rename to src/main/resources/assets/anvilcraft/textures/item/hardened_resin.png diff --git a/src/main/resources/assets/anvilcraft/textures/item/chocolate_white.png b/src/main/resources/assets/anvilcraft/textures/item/white_chocolate.png similarity index 100% rename from src/main/resources/assets/anvilcraft/textures/item/chocolate_white.png rename to src/main/resources/assets/anvilcraft/textures/item/white_chocolate.png