diff options
| author | mat <27899617+mat-1@users.noreply.github.com> | 2025-12-12 00:56:02 -0600 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-12-12 00:56:02 -0600 |
| commit | f9c25665c203d6377ace62f1e95381d037d8fd9e (patch) | |
| tree | 8b4131d20fe661d3cc1175ec27f801fe61df41ea /azalea-inventory/src/default_components | |
| parent | 82ad975242292d5875780b4398b62637674bf50a (diff) | |
| download | azalea-drasl-f9c25665c203d6377ace62f1e95381d037d8fd9e.tar.xz | |
Refactor azalea-registry (#294)
* move registries in azalea-registry into separate modules
* rename Item and Block to ItemKind and BlockKind
* remove 'extra' registries from azalea-registry
* hide deprecated items from docs
* use DamageKindKey instead of Identifier when parsing registries
* store tag entries as a Vec instead of a HashSet
* sort tag values by protocol id
* update changelog
Diffstat (limited to 'azalea-inventory/src/default_components')
| -rw-r--r-- | azalea-inventory/src/default_components/generated.rs | 2405 | ||||
| -rw-r--r-- | azalea-inventory/src/default_components/mod.rs | 10 |
2 files changed, 1224 insertions, 1191 deletions
diff --git a/azalea-inventory/src/default_components/generated.rs b/azalea-inventory/src/default_components/generated.rs index 11f8d160..290cb431 100644 --- a/azalea-inventory/src/default_components/generated.rs +++ b/azalea-inventory/src/default_components/generated.rs @@ -8,7 +8,9 @@ use std::collections::HashMap; use azalea_chat::translatable_component::TranslatableComponent; use azalea_core::attribute_modifier_operation::AttributeModifierOperation; use azalea_registry::{ - Attribute, Block, DataRegistry, EntityKind, HolderSet, Item, MobEffect, SoundEvent, + DataRegistry, HolderSet, + builtin::{Attribute, BlockKind, EntityKind, ItemKind, MobEffect, SoundEvent}, + data, }; use simdnbt::owned::NbtCompound; @@ -18,9 +20,9 @@ use crate::{ }; impl DefaultableComponent for AttributeModifiers { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::CarvedPumpkin => vec![AttributeModifiersEntry { + ItemKind::CarvedPumpkin => vec![AttributeModifiersEntry { display: AttributeModifierDisplay::Hidden, slot: EquipmentSlotGroup::Head, kind: Attribute::WaypointTransmitRange, @@ -30,7 +32,7 @@ impl DefaultableComponent for AttributeModifiers { operation: AttributeModifierOperation::AddMultipliedTotal, }, }], - Item::ChainmailBoots => vec![ + ItemKind::ChainmailBoots => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Feet, kind: Attribute::Armor, @@ -52,7 +54,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::ChainmailChestplate => vec![ + ItemKind::ChainmailChestplate => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Chest, kind: Attribute::Armor, @@ -74,7 +76,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::ChainmailHelmet => vec![ + ItemKind::ChainmailHelmet => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Head, kind: Attribute::Armor, @@ -96,7 +98,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::ChainmailLeggings => vec![ + ItemKind::ChainmailLeggings => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Legs, kind: Attribute::Armor, @@ -118,7 +120,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::CopperAxe => vec![ + ItemKind::CopperAxe => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -140,7 +142,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::CopperBoots => vec![ + ItemKind::CopperBoots => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Feet, kind: Attribute::Armor, @@ -162,7 +164,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::CopperChestplate => vec![ + ItemKind::CopperChestplate => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Chest, kind: Attribute::Armor, @@ -184,7 +186,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::CopperHelmet => vec![ + ItemKind::CopperHelmet => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Head, kind: Attribute::Armor, @@ -206,7 +208,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::CopperHoe => vec![ + ItemKind::CopperHoe => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -228,7 +230,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::CopperHorseArmor => vec![ + ItemKind::CopperHorseArmor => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Body, kind: Attribute::Armor, @@ -250,7 +252,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::CopperLeggings => vec![ + ItemKind::CopperLeggings => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Legs, kind: Attribute::Armor, @@ -272,7 +274,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::CopperNautilusArmor => vec![ + ItemKind::CopperNautilusArmor => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Body, kind: Attribute::Armor, @@ -294,7 +296,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::CopperPickaxe => vec![ + ItemKind::CopperPickaxe => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -316,7 +318,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::CopperShovel => vec![ + ItemKind::CopperShovel => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -338,7 +340,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::CopperSpear => vec![ + ItemKind::CopperSpear => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -360,7 +362,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::CopperSword => vec![ + ItemKind::CopperSword => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -382,7 +384,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::CreeperHead => vec![AttributeModifiersEntry { + ItemKind::CreeperHead => vec![AttributeModifiersEntry { display: AttributeModifierDisplay::Hidden, slot: EquipmentSlotGroup::Head, kind: Attribute::WaypointTransmitRange, @@ -392,7 +394,7 @@ impl DefaultableComponent for AttributeModifiers { operation: AttributeModifierOperation::AddMultipliedTotal, }, }], - Item::DiamondAxe => vec![ + ItemKind::DiamondAxe => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -414,7 +416,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::DiamondBoots => vec![ + ItemKind::DiamondBoots => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Feet, kind: Attribute::Armor, @@ -436,7 +438,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::DiamondChestplate => vec![ + ItemKind::DiamondChestplate => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Chest, kind: Attribute::Armor, @@ -458,7 +460,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::DiamondHelmet => vec![ + ItemKind::DiamondHelmet => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Head, kind: Attribute::Armor, @@ -480,7 +482,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::DiamondHoe => vec![ + ItemKind::DiamondHoe => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -502,7 +504,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::DiamondHorseArmor => vec![ + ItemKind::DiamondHorseArmor => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Body, kind: Attribute::Armor, @@ -524,7 +526,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::DiamondLeggings => vec![ + ItemKind::DiamondLeggings => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Legs, kind: Attribute::Armor, @@ -546,7 +548,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::DiamondNautilusArmor => vec![ + ItemKind::DiamondNautilusArmor => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Body, kind: Attribute::Armor, @@ -568,7 +570,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::DiamondPickaxe => vec![ + ItemKind::DiamondPickaxe => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -590,7 +592,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::DiamondShovel => vec![ + ItemKind::DiamondShovel => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -612,7 +614,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::DiamondSpear => vec![ + ItemKind::DiamondSpear => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -634,7 +636,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::DiamondSword => vec![ + ItemKind::DiamondSword => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -656,7 +658,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::DragonHead => vec![AttributeModifiersEntry { + ItemKind::DragonHead => vec![AttributeModifiersEntry { display: AttributeModifierDisplay::Hidden, slot: EquipmentSlotGroup::Head, kind: Attribute::WaypointTransmitRange, @@ -666,7 +668,7 @@ impl DefaultableComponent for AttributeModifiers { operation: AttributeModifierOperation::AddMultipliedTotal, }, }], - Item::GoldenAxe => vec![ + ItemKind::GoldenAxe => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -688,7 +690,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::GoldenBoots => vec![ + ItemKind::GoldenBoots => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Feet, kind: Attribute::Armor, @@ -710,7 +712,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::GoldenChestplate => vec![ + ItemKind::GoldenChestplate => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Chest, kind: Attribute::Armor, @@ -732,7 +734,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::GoldenHelmet => vec![ + ItemKind::GoldenHelmet => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Head, kind: Attribute::Armor, @@ -754,7 +756,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::GoldenHoe => vec![ + ItemKind::GoldenHoe => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -776,7 +778,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::GoldenHorseArmor => vec![ + ItemKind::GoldenHorseArmor => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Body, kind: Attribute::Armor, @@ -798,7 +800,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::GoldenLeggings => vec![ + ItemKind::GoldenLeggings => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Legs, kind: Attribute::Armor, @@ -820,7 +822,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::GoldenNautilusArmor => vec![ + ItemKind::GoldenNautilusArmor => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Body, kind: Attribute::Armor, @@ -842,7 +844,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::GoldenPickaxe => vec![ + ItemKind::GoldenPickaxe => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -864,7 +866,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::GoldenShovel => vec![ + ItemKind::GoldenShovel => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -886,7 +888,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::GoldenSpear => vec![ + ItemKind::GoldenSpear => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -908,7 +910,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::GoldenSword => vec![ + ItemKind::GoldenSword => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -930,7 +932,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::IronAxe => vec![ + ItemKind::IronAxe => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -952,7 +954,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::IronBoots => vec![ + ItemKind::IronBoots => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Feet, kind: Attribute::Armor, @@ -974,7 +976,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::IronChestplate => vec![ + ItemKind::IronChestplate => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Chest, kind: Attribute::Armor, @@ -996,7 +998,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::IronHelmet => vec![ + ItemKind::IronHelmet => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Head, kind: Attribute::Armor, @@ -1018,7 +1020,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::IronHoe => vec![ + ItemKind::IronHoe => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -1040,7 +1042,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::IronHorseArmor => vec![ + ItemKind::IronHorseArmor => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Body, kind: Attribute::Armor, @@ -1062,7 +1064,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::IronLeggings => vec![ + ItemKind::IronLeggings => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Legs, kind: Attribute::Armor, @@ -1084,7 +1086,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::IronNautilusArmor => vec![ + ItemKind::IronNautilusArmor => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Body, kind: Attribute::Armor, @@ -1106,7 +1108,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::IronPickaxe => vec![ + ItemKind::IronPickaxe => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -1128,7 +1130,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::IronShovel => vec![ + ItemKind::IronShovel => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -1150,7 +1152,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::IronSpear => vec![ + ItemKind::IronSpear => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -1172,7 +1174,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::IronSword => vec![ + ItemKind::IronSword => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -1194,7 +1196,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::LeatherBoots => vec![ + ItemKind::LeatherBoots => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Feet, kind: Attribute::Armor, @@ -1216,7 +1218,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::LeatherChestplate => vec![ + ItemKind::LeatherChestplate => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Chest, kind: Attribute::Armor, @@ -1238,7 +1240,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::LeatherHelmet => vec![ + ItemKind::LeatherHelmet => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Head, kind: Attribute::Armor, @@ -1260,7 +1262,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::LeatherHorseArmor => vec![ + ItemKind::LeatherHorseArmor => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Body, kind: Attribute::Armor, @@ -1282,7 +1284,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::LeatherLeggings => vec![ + ItemKind::LeatherLeggings => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Legs, kind: Attribute::Armor, @@ -1304,7 +1306,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::Mace => vec![ + ItemKind::Mace => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -1326,7 +1328,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::NetheriteAxe => vec![ + ItemKind::NetheriteAxe => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -1348,7 +1350,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::NetheriteBoots => vec![ + ItemKind::NetheriteBoots => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Feet, kind: Attribute::Armor, @@ -1380,7 +1382,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::NetheriteChestplate => vec![ + ItemKind::NetheriteChestplate => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Chest, kind: Attribute::Armor, @@ -1412,7 +1414,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::NetheriteHelmet => vec![ + ItemKind::NetheriteHelmet => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Head, kind: Attribute::Armor, @@ -1444,7 +1446,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::NetheriteHoe => vec![ + ItemKind::NetheriteHoe => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -1466,7 +1468,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::NetheriteHorseArmor => vec![ + ItemKind::NetheriteHorseArmor => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Body, kind: Attribute::Armor, @@ -1498,7 +1500,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::NetheriteLeggings => vec![ + ItemKind::NetheriteLeggings => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Legs, kind: Attribute::Armor, @@ -1530,7 +1532,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::NetheriteNautilusArmor => vec![ + ItemKind::NetheriteNautilusArmor => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Body, kind: Attribute::Armor, @@ -1562,7 +1564,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::NetheritePickaxe => vec![ + ItemKind::NetheritePickaxe => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -1584,7 +1586,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::NetheriteShovel => vec![ + ItemKind::NetheriteShovel => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -1606,7 +1608,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::NetheriteSpear => vec![ + ItemKind::NetheriteSpear => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -1628,7 +1630,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::NetheriteSword => vec![ + ItemKind::NetheriteSword => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -1650,7 +1652,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::PiglinHead => vec![AttributeModifiersEntry { + ItemKind::PiglinHead => vec![AttributeModifiersEntry { display: AttributeModifierDisplay::Hidden, slot: EquipmentSlotGroup::Head, kind: Attribute::WaypointTransmitRange, @@ -1660,7 +1662,7 @@ impl DefaultableComponent for AttributeModifiers { operation: AttributeModifierOperation::AddMultipliedTotal, }, }], - Item::PlayerHead => vec![AttributeModifiersEntry { + ItemKind::PlayerHead => vec![AttributeModifiersEntry { display: AttributeModifierDisplay::Hidden, slot: EquipmentSlotGroup::Head, kind: Attribute::WaypointTransmitRange, @@ -1670,7 +1672,7 @@ impl DefaultableComponent for AttributeModifiers { operation: AttributeModifierOperation::AddMultipliedTotal, }, }], - Item::SkeletonSkull => vec![AttributeModifiersEntry { + ItemKind::SkeletonSkull => vec![AttributeModifiersEntry { display: AttributeModifierDisplay::Hidden, slot: EquipmentSlotGroup::Head, kind: Attribute::WaypointTransmitRange, @@ -1680,7 +1682,7 @@ impl DefaultableComponent for AttributeModifiers { operation: AttributeModifierOperation::AddMultipliedTotal, }, }], - Item::StoneAxe => vec![ + ItemKind::StoneAxe => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -1702,7 +1704,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::StoneHoe => vec![ + ItemKind::StoneHoe => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -1724,7 +1726,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::StonePickaxe => vec![ + ItemKind::StonePickaxe => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -1746,7 +1748,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::StoneShovel => vec![ + ItemKind::StoneShovel => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -1768,7 +1770,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::StoneSpear => vec![ + ItemKind::StoneSpear => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -1790,7 +1792,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::StoneSword => vec![ + ItemKind::StoneSword => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -1812,7 +1814,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::Trident => vec![ + ItemKind::Trident => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -1834,7 +1836,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::TurtleHelmet => vec![ + ItemKind::TurtleHelmet => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Head, kind: Attribute::Armor, @@ -1856,7 +1858,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::WitherSkeletonSkull => vec![AttributeModifiersEntry { + ItemKind::WitherSkeletonSkull => vec![AttributeModifiersEntry { display: AttributeModifierDisplay::Hidden, slot: EquipmentSlotGroup::Head, kind: Attribute::WaypointTransmitRange, @@ -1866,7 +1868,7 @@ impl DefaultableComponent for AttributeModifiers { operation: AttributeModifierOperation::AddMultipliedTotal, }, }], - Item::WolfArmor => vec![ + ItemKind::WolfArmor => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Body, kind: Attribute::Armor, @@ -1888,7 +1890,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::WoodenAxe => vec![ + ItemKind::WoodenAxe => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -1910,7 +1912,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::WoodenHoe => vec![ + ItemKind::WoodenHoe => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -1932,7 +1934,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::WoodenPickaxe => vec![ + ItemKind::WoodenPickaxe => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -1954,7 +1956,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::WoodenShovel => vec![ + ItemKind::WoodenShovel => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -1976,7 +1978,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::WoodenSpear => vec![ + ItemKind::WoodenSpear => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -1998,7 +2000,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::WoodenSword => vec![ + ItemKind::WoodenSword => vec![ AttributeModifiersEntry { slot: EquipmentSlotGroup::Mainhand, kind: Attribute::AttackDamage, @@ -2020,7 +2022,7 @@ impl DefaultableComponent for AttributeModifiers { }, }, ], - Item::ZombieHead => vec![AttributeModifiersEntry { + ItemKind::ZombieHead => vec![AttributeModifiersEntry { display: AttributeModifierDisplay::Hidden, slot: EquipmentSlotGroup::Head, kind: Attribute::WaypointTransmitRange, @@ -2036,17 +2038,19 @@ impl DefaultableComponent for AttributeModifiers { } } impl DefaultableComponent for BreakSound { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::Shield => azalea_registry::Holder::Reference(SoundEvent::ItemShieldBreak), - Item::WolfArmor => azalea_registry::Holder::Reference(SoundEvent::ItemWolfArmorBreak), + ItemKind::Shield => azalea_registry::Holder::Reference(SoundEvent::ItemShieldBreak), + ItemKind::WolfArmor => { + azalea_registry::Holder::Reference(SoundEvent::ItemWolfArmorBreak) + } _ => azalea_registry::Holder::Reference(SoundEvent::EntityItemBreak), }; Some(BreakSound { sound: value }) } } impl DefaultableComponent for Enchantments { - fn default_for_item(_item: Item) -> Option<Self> { + fn default_for_item(_item: ItemKind) -> Option<Self> { Some(Enchantments { levels: HashMap::from_iter([]), }) @@ -2055,7 +2059,7 @@ impl DefaultableComponent for Enchantments { #[rustfmt::skip] static ITEM_MODEL_VALUES: [&str; 1505] = ["minecraft:air","minecraft:stone","minecraft:granite","minecraft:polished_granite","minecraft:diorite","minecraft:polished_diorite","minecraft:andesite","minecraft:polished_andesite","minecraft:deepslate","minecraft:cobbled_deepslate","minecraft:polished_deepslate","minecraft:calcite","minecraft:tuff","minecraft:tuff_slab","minecraft:tuff_stairs","minecraft:tuff_wall","minecraft:chiseled_tuff","minecraft:polished_tuff","minecraft:polished_tuff_slab","minecraft:polished_tuff_stairs","minecraft:polished_tuff_wall","minecraft:tuff_bricks","minecraft:tuff_brick_slab","minecraft:tuff_brick_stairs","minecraft:tuff_brick_wall","minecraft:chiseled_tuff_bricks","minecraft:dripstone_block","minecraft:grass_block","minecraft:dirt","minecraft:coarse_dirt","minecraft:podzol","minecraft:rooted_dirt","minecraft:mud","minecraft:crimson_nylium","minecraft:warped_nylium","minecraft:cobblestone","minecraft:oak_planks","minecraft:spruce_planks","minecraft:birch_planks","minecraft:jungle_planks","minecraft:acacia_planks","minecraft:cherry_planks","minecraft:dark_oak_planks","minecraft:pale_oak_planks","minecraft:mangrove_planks","minecraft:bamboo_planks","minecraft:crimson_planks","minecraft:warped_planks","minecraft:bamboo_mosaic","minecraft:oak_sapling","minecraft:spruce_sapling","minecraft:birch_sapling","minecraft:jungle_sapling","minecraft:acacia_sapling","minecraft:cherry_sapling","minecraft:dark_oak_sapling","minecraft:pale_oak_sapling","minecraft:mangrove_propagule","minecraft:bedrock","minecraft:sand","minecraft:suspicious_sand","minecraft:suspicious_gravel","minecraft:red_sand","minecraft:gravel","minecraft:coal_ore","minecraft:deepslate_coal_ore","minecraft:iron_ore","minecraft:deepslate_iron_ore","minecraft:copper_ore","minecraft:deepslate_copper_ore","minecraft:gold_ore","minecraft:deepslate_gold_ore","minecraft:redstone_ore","minecraft:deepslate_redstone_ore","minecraft:emerald_ore","minecraft:deepslate_emerald_ore","minecraft:lapis_ore","minecraft:deepslate_lapis_ore","minecraft:diamond_ore","minecraft:deepslate_diamond_ore","minecraft:nether_gold_ore","minecraft:nether_quartz_ore","minecraft:ancient_debris","minecraft:coal_block","minecraft:raw_iron_block","minecraft:raw_copper_block","minecraft:raw_gold_block","minecraft:heavy_core","minecraft:amethyst_block","minecraft:budding_amethyst","minecraft:iron_block","minecraft:copper_block","minecraft:gold_block","minecraft:diamond_block","minecraft:netherite_block","minecraft:exposed_copper","minecraft:weathered_copper","minecraft:oxidized_copper","minecraft:chiseled_copper","minecraft:exposed_chiseled_copper","minecraft:weathered_chiseled_copper","minecraft:oxidized_chiseled_copper","minecraft:cut_copper","minecraft:exposed_cut_copper","minecraft:weathered_cut_copper","minecraft:oxidized_cut_copper","minecraft:cut_copper_stairs","minecraft:exposed_cut_copper_stairs","minecraft:weathered_cut_copper_stairs","minecraft:oxidized_cut_copper_stairs","minecraft:cut_copper_slab","minecraft:exposed_cut_copper_slab","minecraft:weathered_cut_copper_slab","minecraft:oxidized_cut_copper_slab","minecraft:waxed_copper_block","minecraft:waxed_exposed_copper","minecraft:waxed_weathered_copper","minecraft:waxed_oxidized_copper","minecraft:waxed_chiseled_copper","minecraft:waxed_exposed_chiseled_copper","minecraft:waxed_weathered_chiseled_copper","minecraft:waxed_oxidized_chiseled_copper","minecraft:waxed_cut_copper","minecraft:waxed_exposed_cut_copper","minecraft:waxed_weathered_cut_copper","minecraft:waxed_oxidized_cut_copper","minecraft:waxed_cut_copper_stairs","minecraft:waxed_exposed_cut_copper_stairs","minecraft:waxed_weathered_cut_copper_stairs","minecraft:waxed_oxidized_cut_copper_stairs","minecraft:waxed_cut_copper_slab","minecraft:waxed_exposed_cut_copper_slab","minecraft:waxed_weathered_cut_copper_slab","minecraft:waxed_oxidized_cut_copper_slab","minecraft:oak_log","minecraft:spruce_log","minecraft:birch_log","minecraft:jungle_log","minecraft:acacia_log","minecraft:cherry_log","minecraft:pale_oak_log","minecraft:dark_oak_log","minecraft:mangrove_log","minecraft:mangrove_roots","minecraft:muddy_mangrove_roots","minecraft:crimson_stem","minecraft:warped_stem","minecraft:bamboo_block","minecraft:stripped_oak_log","minecraft:stripped_spruce_log","minecraft:stripped_birch_log","minecraft:stripped_jungle_log","minecraft:stripped_acacia_log","minecraft:stripped_cherry_log","minecraft:stripped_dark_oak_log","minecraft:stripped_pale_oak_log","minecraft:stripped_mangrove_log","minecraft:stripped_crimson_stem","minecraft:stripped_warped_stem","minecraft:stripped_oak_wood","minecraft:stripped_spruce_wood","minecraft:stripped_birch_wood","minecraft:stripped_jungle_wood","minecraft:stripped_acacia_wood","minecraft:stripped_cherry_wood","minecraft:stripped_dark_oak_wood","minecraft:stripped_pale_oak_wood","minecraft:stripped_mangrove_wood","minecraft:stripped_crimson_hyphae","minecraft:stripped_warped_hyphae","minecraft:stripped_bamboo_block","minecraft:oak_wood","minecraft:spruce_wood","minecraft:birch_wood","minecraft:jungle_wood","minecraft:acacia_wood","minecraft:cherry_wood","minecraft:pale_oak_wood","minecraft:dark_oak_wood","minecraft:mangrove_wood","minecraft:crimson_hyphae","minecraft:warped_hyphae","minecraft:oak_leaves","minecraft:spruce_leaves","minecraft:birch_leaves","minecraft:jungle_leaves","minecraft:acacia_leaves","minecraft:cherry_leaves","minecraft:dark_oak_leaves","minecraft:pale_oak_leaves","minecraft:mangrove_leaves","minecraft:azalea_leaves","minecraft:flowering_azalea_leaves","minecraft:sponge","minecraft:wet_sponge","minecraft:glass","minecraft:tinted_glass","minecraft:lapis_block","minecraft:sandstone","minecraft:chiseled_sandstone","minecraft:cut_sandstone","minecraft:cobweb","minecraft:short_grass","minecraft:fern","minecraft:bush","minecraft:azalea","minecraft:flowering_azalea","minecraft:dead_bush","minecraft:firefly_bush","minecraft:short_dry_grass","minecraft:tall_dry_grass","minecraft:seagrass","minecraft:sea_pickle","minecraft:white_wool","minecraft:orange_wool","minecraft:magenta_wool","minecraft:light_blue_wool","minecraft:yellow_wool","minecraft:lime_wool","minecraft:pink_wool","minecraft:gray_wool","minecraft:light_gray_wool","minecraft:cyan_wool","minecraft:purple_wool","minecraft:blue_wool","minecraft:brown_wool","minecraft:green_wool","minecraft:red_wool","minecraft:black_wool","minecraft:dandelion","minecraft:open_eyeblossom","minecraft:closed_eyeblossom","minecraft:poppy","minecraft:blue_orchid","minecraft:allium","minecraft:azure_bluet","minecraft:red_tulip","minecraft:orange_tulip","minecraft:white_tulip","minecraft:pink_tulip","minecraft:oxeye_daisy","minecraft:cornflower","minecraft:lily_of_the_valley","minecraft:wither_rose","minecraft:torchflower","minecraft:pitcher_plant","minecraft:spore_blossom","minecraft:brown_mushroom","minecraft:red_mushroom","minecraft:crimson_fungus","minecraft:warped_fungus","minecraft:crimson_roots","minecraft:warped_roots","minecraft:nether_sprouts","minecraft:weeping_vines","minecraft:twisting_vines","minecraft:sugar_cane","minecraft:kelp","minecraft:pink_petals","minecraft:wildflowers","minecraft:leaf_litter","minecraft:moss_carpet","minecraft:moss_block","minecraft:pale_moss_carpet","minecraft:pale_hanging_moss","minecraft:pale_moss_block","minecraft:hanging_roots","minecraft:big_dripleaf","minecraft:small_dripleaf","minecraft:bamboo","minecraft:oak_slab","minecraft:spruce_slab","minecraft:birch_slab","minecraft:jungle_slab","minecraft:acacia_slab","minecraft:cherry_slab","minecraft:dark_oak_slab","minecraft:pale_oak_slab","minecraft:mangrove_slab","minecraft:bamboo_slab","minecraft:bamboo_mosaic_slab","minecraft:crimson_slab","minecraft:warped_slab","minecraft:stone_slab","minecraft:smooth_stone_slab","minecraft:sandstone_slab","minecraft:cut_sandstone_slab","minecraft:petrified_oak_slab","minecraft:cobblestone_slab","minecraft:brick_slab","minecraft:stone_brick_slab","minecraft:mud_brick_slab","minecraft:nether_brick_slab","minecraft:quartz_slab","minecraft:red_sandstone_slab","minecraft:cut_red_sandstone_slab","minecraft:purpur_slab","minecraft:prismarine_slab","minecraft:prismarine_brick_slab","minecraft:dark_prismarine_slab","minecraft:smooth_quartz","minecraft:smooth_red_sandstone","minecraft:smooth_sandstone","minecraft:smooth_stone","minecraft:bricks","minecraft:acacia_shelf","minecraft:bamboo_shelf","minecraft:birch_shelf","minecraft:cherry_shelf","minecraft:crimson_shelf","minecraft:dark_oak_shelf","minecraft:jungle_shelf","minecraft:mangrove_shelf","minecraft:oak_shelf","minecraft:pale_oak_shelf","minecraft:spruce_shelf","minecraft:warped_shelf","minecraft:bookshelf","minecraft:chiseled_bookshelf","minecraft:decorated_pot","minecraft:mossy_cobblestone","minecraft:obsidian","minecraft:torch","minecraft:end_rod","minecraft:chorus_plant","minecraft:chorus_flower","minecraft:purpur_block","minecraft:purpur_pillar","minecraft:purpur_stairs","minecraft:spawner","minecraft:creaking_heart","minecraft:chest","minecraft:crafting_table","minecraft:farmland","minecraft:furnace","minecraft:ladder","minecraft:cobblestone_stairs","minecraft:snow","minecraft:ice","minecraft:snow_block","minecraft:cactus","minecraft:cactus_flower","minecraft:clay","minecraft:jukebox","minecraft:oak_fence","minecraft:spruce_fence","minecraft:birch_fence","minecraft:jungle_fence","minecraft:acacia_fence","minecraft:cherry_fence","minecraft:dark_oak_fence","minecraft:pale_oak_fence","minecraft:mangrove_fence","minecraft:bamboo_fence","minecraft:crimson_fence","minecraft:warped_fence","minecraft:pumpkin","minecraft:carved_pumpkin","minecraft:jack_o_lantern","minecraft:netherrack","minecraft:soul_sand","minecraft:soul_soil","minecraft:basalt","minecraft:polished_basalt","minecraft:smooth_basalt","minecraft:soul_torch","minecraft:copper_torch","minecraft:glowstone","minecraft:infested_stone","minecraft:infested_cobblestone","minecraft:infested_stone_bricks","minecraft:infested_mossy_stone_bricks","minecraft:infested_cracked_stone_bricks","minecraft:infested_chiseled_stone_bricks","minecraft:infested_deepslate","minecraft:stone_bricks","minecraft:mossy_stone_bricks","minecraft:cracked_stone_bricks","minecraft:chiseled_stone_bricks","minecraft:packed_mud","minecraft:mud_bricks","minecraft:deepslate_bricks","minecraft:cracked_deepslate_bricks","minecraft:deepslate_tiles","minecraft:cracked_deepslate_tiles","minecraft:chiseled_deepslate","minecraft:reinforced_deepslate","minecraft:brown_mushroom_block","minecraft:red_mushroom_block","minecraft:mushroom_stem","minecraft:iron_bars","minecraft:copper_bars","minecraft:exposed_copper_bars","minecraft:weathered_copper_bars","minecraft:oxidized_copper_bars","minecraft:waxed_copper_bars","minecraft:waxed_exposed_copper_bars","minecraft:waxed_weathered_copper_bars","minecraft:waxed_oxidized_copper_bars","minecraft:iron_chain","minecraft:copper_chain","minecraft:exposed_copper_chain","minecraft:weathered_copper_chain","minecraft:oxidized_copper_chain","minecraft:waxed_copper_chain","minecraft:waxed_exposed_copper_chain","minecraft:waxed_weathered_copper_chain","minecraft:waxed_oxidized_copper_chain","minecraft:glass_pane","minecraft:melon","minecraft:vine","minecraft:glow_lichen","minecraft:resin_clump","minecraft:resin_block","minecraft:resin_bricks","minecraft:resin_brick_stairs","minecraft:resin_brick_slab","minecraft:resin_brick_wall","minecraft:chiseled_resin_bricks","minecraft:brick_stairs","minecraft:stone_brick_stairs","minecraft:mud_brick_stairs","minecraft:mycelium","minecraft:lily_pad","minecraft:nether_bricks","minecraft:cracked_nether_bricks","minecraft:chiseled_nether_bricks","minecraft:nether_brick_fence","minecraft:nether_brick_stairs","minecraft:sculk","minecraft:sculk_vein","minecraft:sculk_catalyst","minecraft:sculk_shrieker","minecraft:enchanting_table","minecraft:end_portal_frame","minecraft:end_stone","minecraft:end_stone_bricks","minecraft:dragon_egg","minecraft:sandstone_stairs","minecraft:ender_chest","minecraft:emerald_block","minecraft:oak_stairs","minecraft:spruce_stairs","minecraft:birch_stairs","minecraft:jungle_stairs","minecraft:acacia_stairs","minecraft:cherry_stairs","minecraft:dark_oak_stairs","minecraft:pale_oak_stairs","minecraft:mangrove_stairs","minecraft:bamboo_stairs","minecraft:bamboo_mosaic_stairs","minecraft:crimson_stairs","minecraft:warped_stairs","minecraft:command_block","minecraft:beacon","minecraft:cobblestone_wall","minecraft:mossy_cobblestone_wall","minecraft:brick_wall","minecraft:prismarine_wall","minecraft:red_sandstone_wall","minecraft:mossy_stone_brick_wall","minecraft:granite_wall","minecraft:stone_brick_wall","minecraft:mud_brick_wall","minecraft:nether_brick_wall","minecraft:andesite_wall","minecraft:red_nether_brick_wall","minecraft:sandstone_wall","minecraft:end_stone_brick_wall","minecraft:diorite_wall","minecraft:blackstone_wall","minecraft:polished_blackstone_wall","minecraft:polished_blackstone_brick_wall","minecraft:cobbled_deepslate_wall","minecraft:polished_deepslate_wall","minecraft:deepslate_brick_wall","minecraft:deepslate_tile_wall","minecraft:anvil","minecraft:chipped_anvil","minecraft:damaged_anvil","minecraft:chiseled_quartz_block","minecraft:quartz_block","minecraft:quartz_bricks","minecraft:quartz_pillar","minecraft:quartz_stairs","minecraft:white_terracotta","minecraft:orange_terracotta","minecraft:magenta_terracotta","minecraft:light_blue_terracotta","minecraft:yellow_terracotta","minecraft:lime_terracotta","minecraft:pink_terracotta","minecraft:gray_terracotta","minecraft:light_gray_terracotta","minecraft:cyan_terracotta","minecraft:purple_terracotta","minecraft:blue_terracotta","minecraft:brown_terracotta","minecraft:green_terracotta","minecraft:red_terracotta","minecraft:black_terracotta","minecraft:barrier","minecraft:light","minecraft:hay_block","minecraft:white_carpet","minecraft:orange_carpet","minecraft:magenta_carpet","minecraft:light_blue_carpet","minecraft:yellow_carpet","minecraft:lime_carpet","minecraft:pink_carpet","minecraft:gray_carpet","minecraft:light_gray_carpet","minecraft:cyan_carpet","minecraft:purple_carpet","minecraft:blue_carpet","minecraft:brown_carpet","minecraft:green_carpet","minecraft:red_carpet","minecraft:black_carpet","minecraft:terracotta","minecraft:packed_ice","minecraft:dirt_path","minecraft:sunflower","minecraft:lilac","minecraft:rose_bush","minecraft:peony","minecraft:tall_grass","minecraft:large_fern","minecraft:white_stained_glass","minecraft:orange_stained_glass","minecraft:magenta_stained_glass","minecraft:light_blue_stained_glass","minecraft:yellow_stained_glass","minecraft:lime_stained_glass","minecraft:pink_stained_glass","minecraft:gray_stained_glass","minecraft:light_gray_stained_glass","minecraft:cyan_stained_glass","minecraft:purple_stained_glass","minecraft:blue_stained_glass","minecraft:brown_stained_glass","minecraft:green_stained_glass","minecraft:red_stained_glass","minecraft:black_stained_glass","minecraft:white_stained_glass_pane","minecraft:orange_stained_glass_pane","minecraft:magenta_stained_glass_pane","minecraft:light_blue_stained_glass_pane","minecraft:yellow_stained_glass_pane","minecraft:lime_stained_glass_pane","minecraft:pink_stained_glass_pane","minecraft:gray_stained_glass_pane","minecraft:light_gray_stained_glass_pane","minecraft:cyan_stained_glass_pane","minecraft:purple_stained_glass_pane","minecraft:blue_stained_glass_pane","minecraft:brown_stained_glass_pane","minecraft:green_stained_glass_pane","minecraft:red_stained_glass_pane","minecraft:black_stained_glass_pane","minecraft:prismarine","minecraft:prismarine_bricks","minecraft:dark_prismarine","minecraft:prismarine_stairs","minecraft:prismarine_brick_stairs","minecraft:dark_prismarine_stairs","minecraft:sea_lantern","minecraft:red_sandstone","minecraft:chiseled_red_sandstone","minecraft:cut_red_sandstone","minecraft:red_sandstone_stairs","minecraft:repeating_command_block","minecraft:chain_command_block","minecraft:magma_block","minecraft:nether_wart_block","minecraft:warped_wart_block","minecraft:red_nether_bricks","minecraft:bone_block","minecraft:structure_void","minecraft:shulker_box","minecraft:white_shulker_box","minecraft:orange_shulker_box","minecraft:magenta_shulker_box","minecraft:light_blue_shulker_box","minecraft:yellow_shulker_box","minecraft:lime_shulker_box","minecraft:pink_shulker_box","minecraft:gray_shulker_box","minecraft:light_gray_shulker_box","minecraft:cyan_shulker_box","minecraft:purple_shulker_box","minecraft:blue_shulker_box","minecraft:brown_shulker_box","minecraft:green_shulker_box","minecraft:red_shulker_box","minecraft:black_shulker_box","minecraft:white_glazed_terracotta","minecraft:orange_glazed_terracotta","minecraft:magenta_glazed_terracotta","minecraft:light_blue_glazed_terracotta","minecraft:yellow_glazed_terracotta","minecraft:lime_glazed_terracotta","minecraft:pink_glazed_terracotta","minecraft:gray_glazed_terracotta","minecraft:light_gray_glazed_terracotta","minecraft:cyan_glazed_terracotta","minecraft:purple_glazed_terracotta","minecraft:blue_glazed_terracotta","minecraft:brown_glazed_terracotta","minecraft:green_glazed_terracotta","minecraft:red_glazed_terracotta","minecraft:black_glazed_terracotta","minecraft:white_concrete","minecraft:orange_concrete","minecraft:magenta_concrete","minecraft:light_blue_concrete","minecraft:yellow_concrete","minecraft:lime_concrete","minecraft:pink_concrete","minecraft:gray_concrete","minecraft:light_gray_concrete","minecraft:cyan_concrete","minecraft:purple_concrete","minecraft:blue_concrete","minecraft:brown_concrete","minecraft:green_concrete","minecraft:red_concrete","minecraft:black_concrete","minecraft:white_concrete_powder","minecraft:orange_concrete_powder","minecraft:magenta_concrete_powder","minecraft:light_blue_concrete_powder","minecraft:yellow_concrete_powder","minecraft:lime_concrete_powder","minecraft:pink_concrete_powder","minecraft:gray_concrete_powder","minecraft:light_gray_concrete_powder","minecraft:cyan_concrete_powder","minecraft:purple_concrete_powder","minecraft:blue_concrete_powder","minecraft:brown_concrete_powder","minecraft:green_concrete_powder","minecraft:red_concrete_powder","minecraft:black_concrete_powder","minecraft:turtle_egg","minecraft:sniffer_egg","minecraft:dried_ghast","minecraft:dead_tube_coral_block","minecraft:dead_brain_coral_block","minecraft:dead_bubble_coral_block","minecraft:dead_fire_coral_block","minecraft:dead_horn_coral_block","minecraft:tube_coral_block","minecraft:brain_coral_block","minecraft:bubble_coral_block","minecraft:fire_coral_block","minecraft:horn_coral_block","minecraft:tube_coral","minecraft:brain_coral","minecraft:bubble_coral","minecraft:fire_coral","minecraft:horn_coral","minecraft:dead_brain_coral","minecraft:dead_bubble_coral","minecraft:dead_fire_coral","minecraft:dead_horn_coral","minecraft:dead_tube_coral","minecraft:tube_coral_fan","minecraft:brain_coral_fan","minecraft:bubble_coral_fan","minecraft:fire_coral_fan","minecraft:horn_coral_fan","minecraft:dead_tube_coral_fan","minecraft:dead_brain_coral_fan","minecraft:dead_bubble_coral_fan","minecraft:dead_fire_coral_fan","minecraft:dead_horn_coral_fan","minecraft:blue_ice","minecraft:conduit","minecraft:polished_granite_stairs","minecraft:smooth_red_sandstone_stairs","minecraft:mossy_stone_brick_stairs","minecraft:polished_diorite_stairs","minecraft:mossy_cobblestone_stairs","minecraft:end_stone_brick_stairs","minecraft:stone_stairs","minecraft:smooth_sandstone_stairs","minecraft:smooth_quartz_stairs","minecraft:granite_stairs","minecraft:andesite_stairs","minecraft:red_nether_brick_stairs","minecraft:polished_andesite_stairs","minecraft:diorite_stairs","minecraft:cobbled_deepslate_stairs","minecraft:polished_deepslate_stairs","minecraft:deepslate_brick_stairs","minecraft:deepslate_tile_stairs","minecraft:polished_granite_slab","minecraft:smooth_red_sandstone_slab","minecraft:mossy_stone_brick_slab","minecraft:polished_diorite_slab","minecraft:mossy_cobblestone_slab","minecraft:end_stone_brick_slab","minecraft:smooth_sandstone_slab","minecraft:smooth_quartz_slab","minecraft:granite_slab","minecraft:andesite_slab","minecraft:red_nether_brick_slab","minecraft:polished_andesite_slab","minecraft:diorite_slab","minecraft:cobbled_deepslate_slab","minecraft:polished_deepslate_slab","minecraft:deepslate_brick_slab","minecraft:deepslate_tile_slab","minecraft:scaffolding","minecraft:redstone","minecraft:redstone_torch","minecraft:redstone_block","minecraft:repeater","minecraft:comparator","minecraft:piston","minecraft:sticky_piston","minecraft:slime_block","minecraft:honey_block","minecraft:observer","minecraft:hopper","minecraft:dispenser","minecraft:dropper","minecraft:lectern","minecraft:target","minecraft:lever","minecraft:lightning_rod","minecraft:exposed_lightning_rod","minecraft:weathered_lightning_rod","minecraft:oxidized_lightning_rod","minecraft:waxed_lightning_rod","minecraft:waxed_exposed_lightning_rod","minecraft:waxed_weathered_lightning_rod","minecraft:waxed_oxidized_lightning_rod","minecraft:daylight_detector","minecraft:sculk_sensor","minecraft:calibrated_sculk_sensor","minecraft:tripwire_hook","minecraft:trapped_chest","minecraft:tnt","minecraft:redstone_lamp","minecraft:note_block","minecraft:stone_button","minecraft:polished_blackstone_button","minecraft:oak_button","minecraft:spruce_button","minecraft:birch_button","minecraft:jungle_button","minecraft:acacia_button","minecraft:cherry_button","minecraft:dark_oak_button","minecraft:pale_oak_button","minecraft:mangrove_button","minecraft:bamboo_button","minecraft:crimson_button","minecraft:warped_button","minecraft:stone_pressure_plate","minecraft:polished_blackstone_pressure_plate","minecraft:light_weighted_pressure_plate","minecraft:heavy_weighted_pressure_plate","minecraft:oak_pressure_plate","minecraft:spruce_pressure_plate","minecraft:birch_pressure_plate","minecraft:jungle_pressure_plate","minecraft:acacia_pressure_plate","minecraft:cherry_pressure_plate","minecraft:dark_oak_pressure_plate","minecraft:pale_oak_pressure_plate","minecraft:mangrove_pressure_plate","minecraft:bamboo_pressure_plate","minecraft:crimson_pressure_plate","minecraft:warped_pressure_plate","minecraft:iron_door","minecraft:oak_door","minecraft:spruce_door","minecraft:birch_door","minecraft:jungle_door","minecraft:acacia_door","minecraft:cherry_door","minecraft:dark_oak_door","minecraft:pale_oak_door","minecraft:mangrove_door","minecraft:bamboo_door","minecraft:crimson_door","minecraft:warped_door","minecraft:copper_door","minecraft:exposed_copper_door","minecraft:weathered_copper_door","minecraft:oxidized_copper_door","minecraft:waxed_copper_door","minecraft:waxed_exposed_copper_door","minecraft:waxed_weathered_copper_door","minecraft:waxed_oxidized_copper_door","minecraft:iron_trapdoor","minecraft:oak_trapdoor","minecraft:spruce_trapdoor","minecraft:birch_trapdoor","minecraft:jungle_trapdoor","minecraft:acacia_trapdoor","minecraft:cherry_trapdoor","minecraft:dark_oak_trapdoor","minecraft:pale_oak_trapdoor","minecraft:mangrove_trapdoor","minecraft:bamboo_trapdoor","minecraft:crimson_trapdoor","minecraft:warped_trapdoor","minecraft:copper_trapdoor","minecraft:exposed_copper_trapdoor","minecraft:weathered_copper_trapdoor","minecraft:oxidized_copper_trapdoor","minecraft:waxed_copper_trapdoor","minecraft:waxed_exposed_copper_trapdoor","minecraft:waxed_weathered_copper_trapdoor","minecraft:waxed_oxidized_copper_trapdoor","minecraft:oak_fence_gate","minecraft:spruce_fence_gate","minecraft:birch_fence_gate","minecraft:jungle_fence_gate","minecraft:acacia_fence_gate","minecraft:cherry_fence_gate","minecraft:dark_oak_fence_gate","minecraft:pale_oak_fence_gate","minecraft:mangrove_fence_gate","minecraft:bamboo_fence_gate","minecraft:crimson_fence_gate","minecraft:warped_fence_gate","minecraft:powered_rail","minecraft:detector_rail","minecraft:rail","minecraft:activator_rail","minecraft:saddle","minecraft:white_harness","minecraft:orange_harness","minecraft:magenta_harness","minecraft:light_blue_harness","minecraft:yellow_harness","minecraft:lime_harness","minecraft:pink_harness","minecraft:gray_harness","minecraft:light_gray_harness","minecraft:cyan_harness","minecraft:purple_harness","minecraft:blue_harness","minecraft:brown_harness","minecraft:green_harness","minecraft:red_harness","minecraft:black_harness","minecraft:minecart","minecraft:chest_minecart","minecraft:furnace_minecart","minecraft:tnt_minecart","minecraft:hopper_minecart","minecraft:carrot_on_a_stick","minecraft:warped_fungus_on_a_stick","minecraft:phantom_membrane","minecraft:elytra","minecraft:oak_boat","minecraft:oak_chest_boat","minecraft:spruce_boat","minecraft:spruce_chest_boat","minecraft:birch_boat","minecraft:birch_chest_boat","minecraft:jungle_boat","minecraft:jungle_chest_boat","minecraft:acacia_boat","minecraft:acacia_chest_boat","minecraft:cherry_boat","minecraft:cherry_chest_boat","minecraft:dark_oak_boat","minecraft:dark_oak_chest_boat","minecraft:pale_oak_boat","minecraft:pale_oak_chest_boat","minecraft:mangrove_boat","minecraft:mangrove_chest_boat","minecraft:bamboo_raft","minecraft:bamboo_chest_raft","minecraft:structure_block","minecraft:jigsaw","minecraft:test_block","minecraft:test_instance_block","minecraft:turtle_helmet","minecraft:turtle_scute","minecraft:armadillo_scute","minecraft:wolf_armor","minecraft:flint_and_steel","minecraft:bowl","minecraft:apple","minecraft:bow","minecraft:arrow","minecraft:coal","minecraft:charcoal","minecraft:diamond","minecraft:emerald","minecraft:lapis_lazuli","minecraft:quartz","minecraft:amethyst_shard","minecraft:raw_iron","minecraft:iron_ingot","minecraft:raw_copper","minecraft:copper_ingot","minecraft:raw_gold","minecraft:gold_ingot","minecraft:netherite_ingot","minecraft:netherite_scrap","minecraft:wooden_sword","minecraft:wooden_shovel","minecraft:wooden_pickaxe","minecraft:wooden_axe","minecraft:wooden_hoe","minecraft:copper_sword","minecraft:copper_shovel","minecraft:copper_pickaxe","minecraft:copper_axe","minecraft:copper_hoe","minecraft:stone_sword","minecraft:stone_shovel","minecraft:stone_pickaxe","minecraft:stone_axe","minecraft:stone_hoe","minecraft:golden_sword","minecraft:golden_shovel","minecraft:golden_pickaxe","minecraft:golden_axe","minecraft:golden_hoe","minecraft:iron_sword","minecraft:iron_shovel","minecraft:iron_pickaxe","minecraft:iron_axe","minecraft:iron_hoe","minecraft:diamond_sword","minecraft:diamond_shovel","minecraft:diamond_pickaxe","minecraft:diamond_axe","minecraft:diamond_hoe","minecraft:netherite_sword","minecraft:netherite_shovel","minecraft:netherite_pickaxe","minecraft:netherite_axe","minecraft:netherite_hoe","minecraft:stick","minecraft:mushroom_stew","minecraft:string","minecraft:feather","minecraft:gunpowder","minecraft:wheat_seeds","minecraft:wheat","minecraft:bread","minecraft:leather_helmet","minecraft:leather_chestplate","minecraft:leather_leggings","minecraft:leather_boots","minecraft:copper_helmet","minecraft:copper_chestplate","minecraft:copper_leggings","minecraft:copper_boots","minecraft:chainmail_helmet","minecraft:chainmail_chestplate","minecraft:chainmail_leggings","minecraft:chainmail_boots","minecraft:iron_helmet","minecraft:iron_chestplate","minecraft:iron_leggings","minecraft:iron_boots","minecraft:diamond_helmet","minecraft:diamond_chestplate","minecraft:diamond_leggings","minecraft:diamond_boots","minecraft:golden_helmet","minecraft:golden_chestplate","minecraft:golden_leggings","minecraft:golden_boots","minecraft:netherite_helmet","minecraft:netherite_chestplate","minecraft:netherite_leggings","minecraft:netherite_boots","minecraft:flint","minecraft:porkchop","minecraft:cooked_porkchop","minecraft:painting","minecraft:golden_apple","minecraft:enchanted_golden_apple","minecraft:oak_sign","minecraft:spruce_sign","minecraft:birch_sign","minecraft:jungle_sign","minecraft:acacia_sign","minecraft:cherry_sign","minecraft:dark_oak_sign","minecraft:pale_oak_sign","minecraft:mangrove_sign","minecraft:bamboo_sign","minecraft:crimson_sign","minecraft:warped_sign","minecraft:oak_hanging_sign","minecraft:spruce_hanging_sign","minecraft:birch_hanging_sign","minecraft:jungle_hanging_sign","minecraft:acacia_hanging_sign","minecraft:cherry_hanging_sign","minecraft:dark_oak_hanging_sign","minecraft:pale_oak_hanging_sign","minecraft:mangrove_hanging_sign","minecraft:bamboo_hanging_sign","minecraft:crimson_hanging_sign","minecraft:warped_hanging_sign","minecraft:bucket","minecraft:water_bucket","minecraft:lava_bucket","minecraft:powder_snow_bucket","minecraft:snowball","minecraft:leather","minecraft:milk_bucket","minecraft:pufferfish_bucket","minecraft:salmon_bucket","minecraft:cod_bucket","minecraft:tropical_fish_bucket","minecraft:axolotl_bucket","minecraft:tadpole_bucket","minecraft:brick","minecraft:clay_ball","minecraft:dried_kelp_block","minecraft:paper","minecraft:book","minecraft:slime_ball","minecraft:egg","minecraft:blue_egg","minecraft:brown_egg","minecraft:compass","minecraft:recovery_compass","minecraft:bundle","minecraft:white_bundle","minecraft:orange_bundle","minecraft:magenta_bundle","minecraft:light_blue_bundle","minecraft:yellow_bundle","minecraft:lime_bundle","minecraft:pink_bundle","minecraft:gray_bundle","minecraft:light_gray_bundle","minecraft:cyan_bundle","minecraft:purple_bundle","minecraft:blue_bundle","minecraft:brown_bundle","minecraft:green_bundle","minecraft:red_bundle","minecraft:black_bundle","minecraft:fishing_rod","minecraft:clock","minecraft:spyglass","minecraft:glowstone_dust","minecraft:cod","minecraft:salmon","minecraft:tropical_fish","minecraft:pufferfish","minecraft:cooked_cod","minecraft:cooked_salmon","minecraft:ink_sac","minecraft:glow_ink_sac","minecraft:cocoa_beans","minecraft:white_dye","minecraft:orange_dye","minecraft:magenta_dye","minecraft:light_blue_dye","minecraft:yellow_dye","minecraft:lime_dye","minecraft:pink_dye","minecraft:gray_dye","minecraft:light_gray_dye","minecraft:cyan_dye","minecraft:purple_dye","minecraft:blue_dye","minecraft:brown_dye","minecraft:green_dye","minecraft:red_dye","minecraft:black_dye","minecraft:bone_meal","minecraft:bone","minecraft:sugar","minecraft:cake","minecraft:white_bed","minecraft:orange_bed","minecraft:magenta_bed","minecraft:light_blue_bed","minecraft:yellow_bed","minecraft:lime_bed","minecraft:pink_bed","minecraft:gray_bed","minecraft:light_gray_bed","minecraft:cyan_bed","minecraft:purple_bed","minecraft:blue_bed","minecraft:brown_bed","minecraft:green_bed","minecraft:red_bed","minecraft:black_bed","minecraft:cookie","minecraft:crafter","minecraft:filled_map","minecraft:shears","minecraft:melon_slice","minecraft:dried_kelp","minecraft:pumpkin_seeds","minecraft:melon_seeds","minecraft:beef","minecraft:cooked_beef","minecraft:chicken","minecraft:cooked_chicken","minecraft:rotten_flesh","minecraft:ender_pearl","minecraft:blaze_rod","minecraft:ghast_tear","minecraft:gold_nugget","minecraft:nether_wart","minecraft:glass_bottle","minecraft:potion","minecraft:spider_eye","minecraft:fermented_spider_eye","minecraft:blaze_powder","minecraft:magma_cream","minecraft:brewing_stand","minecraft:cauldron","minecraft:ender_eye","minecraft:glistering_melon_slice","minecraft:chicken_spawn_egg","minecraft:cow_spawn_egg","minecraft:pig_spawn_egg","minecraft:sheep_spawn_egg","minecraft:camel_spawn_egg","minecraft:donkey_spawn_egg","minecraft:horse_spawn_egg","minecraft:mule_spawn_egg","minecraft:cat_spawn_egg","minecraft:parrot_spawn_egg","minecraft:wolf_spawn_egg","minecraft:armadillo_spawn_egg","minecraft:bat_spawn_egg","minecraft:bee_spawn_egg","minecraft:fox_spawn_egg","minecraft:goat_spawn_egg","minecraft:llama_spawn_egg","minecraft:ocelot_spawn_egg","minecraft:panda_spawn_egg","minecraft:polar_bear_spawn_egg","minecraft:rabbit_spawn_egg","minecraft:axolotl_spawn_egg","minecraft:cod_spawn_egg","minecraft:dolphin_spawn_egg","minecraft:frog_spawn_egg","minecraft:glow_squid_spawn_egg","minecraft:nautilus_spawn_egg","minecraft:pufferfish_spawn_egg","minecraft:salmon_spawn_egg","minecraft:squid_spawn_egg","minecraft:tadpole_spawn_egg","minecraft:tropical_fish_spawn_egg","minecraft:turtle_spawn_egg","minecraft:allay_spawn_egg","minecraft:mooshroom_spawn_egg","minecraft:sniffer_spawn_egg","minecraft:copper_golem_spawn_egg","minecraft:iron_golem_spawn_egg","minecraft:snow_golem_spawn_egg","minecraft:trader_llama_spawn_egg","minecraft:villager_spawn_egg","minecraft:wandering_trader_spawn_egg","minecraft:bogged_spawn_egg","minecraft:camel_husk_spawn_egg","minecraft:drowned_spawn_egg","minecraft:husk_spawn_egg","minecraft:parched_spawn_egg","minecraft:skeleton_spawn_egg","minecraft:skeleton_horse_spawn_egg","minecraft:stray_spawn_egg","minecraft:wither_spawn_egg","minecraft:wither_skeleton_spawn_egg","minecraft:zombie_spawn_egg","minecraft:zombie_horse_spawn_egg","minecraft:zombie_nautilus_spawn_egg","minecraft:zombie_villager_spawn_egg","minecraft:cave_spider_spawn_egg","minecraft:spider_spawn_egg","minecraft:breeze_spawn_egg","minecraft:creaking_spawn_egg","minecraft:creeper_spawn_egg","minecraft:elder_guardian_spawn_egg","minecraft:guardian_spawn_egg","minecraft:phantom_spawn_egg","minecraft:silverfish_spawn_egg","minecraft:slime_spawn_egg","minecraft:warden_spawn_egg","minecraft:witch_spawn_egg","minecraft:evoker_spawn_egg","minecraft:pillager_spawn_egg","minecraft:ravager_spawn_egg","minecraft:vindicator_spawn_egg","minecraft:vex_spawn_egg","minecraft:blaze_spawn_egg","minecraft:ghast_spawn_egg","minecraft:happy_ghast_spawn_egg","minecraft:hoglin_spawn_egg","minecraft:magma_cube_spawn_egg","minecraft:piglin_spawn_egg","minecraft:piglin_brute_spawn_egg","minecraft:strider_spawn_egg","minecraft:zoglin_spawn_egg","minecraft:zombified_piglin_spawn_egg","minecraft:ender_dragon_spawn_egg","minecraft:enderman_spawn_egg","minecraft:endermite_spawn_egg","minecraft:shulker_spawn_egg","minecraft:experience_bottle","minecraft:fire_charge","minecraft:wind_charge","minecraft:writable_book","minecraft:written_book","minecraft:breeze_rod","minecraft:mace","minecraft:item_frame","minecraft:glow_item_frame","minecraft:flower_pot","minecraft:carrot","minecraft:potato","minecraft:baked_potato","minecraft:poisonous_potato","minecraft:map","minecraft:golden_carrot","minecraft:skeleton_skull","minecraft:wither_skeleton_skull","minecraft:player_head","minecraft:zombie_head","minecraft:creeper_head","minecraft:dragon_head","minecraft:piglin_head","minecraft:nether_star","minecraft:pumpkin_pie","minecraft:firework_rocket","minecraft:firework_star","minecraft:enchanted_book","minecraft:nether_brick","minecraft:resin_brick","minecraft:prismarine_shard","minecraft:prismarine_crystals","minecraft:rabbit","minecraft:cooked_rabbit","minecraft:rabbit_stew","minecraft:rabbit_foot","minecraft:rabbit_hide","minecraft:armor_stand","minecraft:copper_horse_armor","minecraft:iron_horse_armor","minecraft:golden_horse_armor","minecraft:diamond_horse_armor","minecraft:netherite_horse_armor","minecraft:leather_horse_armor","minecraft:lead","minecraft:name_tag","minecraft:command_block_minecart","minecraft:mutton","minecraft:cooked_mutton","minecraft:white_banner","minecraft:orange_banner","minecraft:magenta_banner","minecraft:light_blue_banner","minecraft:yellow_banner","minecraft:lime_banner","minecraft:pink_banner","minecraft:gray_banner","minecraft:light_gray_banner","minecraft:cyan_banner","minecraft:purple_banner","minecraft:blue_banner","minecraft:brown_banner","minecraft:green_banner","minecraft:red_banner","minecraft:black_banner","minecraft:end_crystal","minecraft:chorus_fruit","minecraft:popped_chorus_fruit","minecraft:torchflower_seeds","minecraft:pitcher_pod","minecraft:beetroot","minecraft:beetroot_seeds","minecraft:beetroot_soup","minecraft:dragon_breath","minecraft:splash_potion","minecraft:spectral_arrow","minecraft:tipped_arrow","minecraft:lingering_potion","minecraft:shield","minecraft:wooden_spear","minecraft:stone_spear","minecraft:copper_spear","minecraft:iron_spear","minecraft:golden_spear","minecraft:diamond_spear","minecraft:netherite_spear","minecraft:totem_of_undying","minecraft:shulker_shell","minecraft:iron_nugget","minecraft:copper_nugget","minecraft:knowledge_book","minecraft:debug_stick","minecraft:music_disc_13","minecraft:music_disc_cat","minecraft:music_disc_blocks","minecraft:music_disc_chirp","minecraft:music_disc_creator","minecraft:music_disc_creator_music_box","minecraft:music_disc_far","minecraft:music_disc_lava_chicken","minecraft:music_disc_mall","minecraft:music_disc_mellohi","minecraft:music_disc_stal","minecraft:music_disc_strad","minecraft:music_disc_ward","minecraft:music_disc_11","minecraft:music_disc_wait","minecraft:music_disc_otherside","minecraft:music_disc_relic","minecraft:music_disc_5","minecraft:music_disc_pigstep","minecraft:music_disc_precipice","minecraft:music_disc_tears","minecraft:disc_fragment_5","minecraft:trident","minecraft:nautilus_shell","minecraft:iron_nautilus_armor","minecraft:golden_nautilus_armor","minecraft:diamond_nautilus_armor","minecraft:netherite_nautilus_armor","minecraft:copper_nautilus_armor","minecraft:heart_of_the_sea","minecraft:crossbow","minecraft:suspicious_stew","minecraft:loom","minecraft:flower_banner_pattern","minecraft:creeper_banner_pattern","minecraft:skull_banner_pattern","minecraft:mojang_banner_pattern","minecraft:globe_banner_pattern","minecraft:piglin_banner_pattern","minecraft:flow_banner_pattern","minecraft:guster_banner_pattern","minecraft:field_masoned_banner_pattern","minecraft:bordure_indented_banner_pattern","minecraft:goat_horn","minecraft:composter","minecraft:barrel","minecraft:smoker","minecraft:blast_furnace","minecraft:cartography_table","minecraft:fletching_table","minecraft:grindstone","minecraft:smithing_table","minecraft:stonecutter","minecraft:bell","minecraft:lantern","minecraft:soul_lantern","minecraft:copper_lantern","minecraft:exposed_copper_lantern","minecraft:weathered_copper_lantern","minecraft:oxidized_copper_lantern","minecraft:waxed_copper_lantern","minecraft:waxed_exposed_copper_lantern","minecraft:waxed_weathered_copper_lantern","minecraft:waxed_oxidized_copper_lantern","minecraft:sweet_berries","minecraft:glow_berries","minecraft:campfire","minecraft:soul_campfire","minecraft:shroomlight","minecraft:honeycomb","minecraft:bee_nest","minecraft:beehive","minecraft:honey_bottle","minecraft:honeycomb_block","minecraft:lodestone","minecraft:crying_obsidian","minecraft:blackstone","minecraft:blackstone_slab","minecraft:blackstone_stairs","minecraft:gilded_blackstone","minecraft:polished_blackstone","minecraft:polished_blackstone_slab","minecraft:polished_blackstone_stairs","minecraft:chiseled_polished_blackstone","minecraft:polished_blackstone_bricks","minecraft:polished_blackstone_brick_slab","minecraft:polished_blackstone_brick_stairs","minecraft:cracked_polished_blackstone_bricks","minecraft:respawn_anchor","minecraft:candle","minecraft:white_candle","minecraft:orange_candle","minecraft:magenta_candle","minecraft:light_blue_candle","minecraft:yellow_candle","minecraft:lime_candle","minecraft:pink_candle","minecraft:gray_candle","minecraft:light_gray_candle","minecraft:cyan_candle","minecraft:purple_candle","minecraft:blue_candle","minecraft:brown_candle","minecraft:green_candle","minecraft:red_candle","minecraft:black_candle","minecraft:small_amethyst_bud","minecraft:medium_amethyst_bud","minecraft:large_amethyst_bud","minecraft:amethyst_cluster","minecraft:pointed_dripstone","minecraft:ochre_froglight","minecraft:verdant_froglight","minecraft:pearlescent_froglight","minecraft:frogspawn","minecraft:echo_shard","minecraft:brush","minecraft:netherite_upgrade_smithing_template","minecraft:sentry_armor_trim_smithing_template","minecraft:dune_armor_trim_smithing_template","minecraft:coast_armor_trim_smithing_template","minecraft:wild_armor_trim_smithing_template","minecraft:ward_armor_trim_smithing_template","minecraft:eye_armor_trim_smithing_template","minecraft:vex_armor_trim_smithing_template","minecraft:tide_armor_trim_smithing_template","minecraft:snout_armor_trim_smithing_template","minecraft:rib_armor_trim_smithing_template","minecraft:spire_armor_trim_smithing_template","minecraft:wayfinder_armor_trim_smithing_template","minecraft:shaper_armor_trim_smithing_template","minecraft:silence_armor_trim_smithing_template","minecraft:raiser_armor_trim_smithing_template","minecraft:host_armor_trim_smithing_template","minecraft:flow_armor_trim_smithing_template","minecraft:bolt_armor_trim_smithing_template","minecraft:angler_pottery_sherd","minecraft:archer_pottery_sherd","minecraft:arms_up_pottery_sherd","minecraft:blade_pottery_sherd","minecraft:brewer_pottery_sherd","minecraft:burn_pottery_sherd","minecraft:danger_pottery_sherd","minecraft:explorer_pottery_sherd","minecraft:flow_pottery_sherd","minecraft:friend_pottery_sherd","minecraft:guster_pottery_sherd","minecraft:heart_pottery_sherd","minecraft:heartbreak_pottery_sherd","minecraft:howl_pottery_sherd","minecraft:miner_pottery_sherd","minecraft:mourner_pottery_sherd","minecraft:plenty_pottery_sherd","minecraft:prize_pottery_sherd","minecraft:scrape_pottery_sherd","minecraft:sheaf_pottery_sherd","minecraft:shelter_pottery_sherd","minecraft:skull_pottery_sherd","minecraft:snort_pottery_sherd","minecraft:copper_grate","minecraft:exposed_copper_grate","minecraft:weathered_copper_grate","minecraft:oxidized_copper_grate","minecraft:waxed_copper_grate","minecraft:waxed_exposed_copper_grate","minecraft:waxed_weathered_copper_grate","minecraft:waxed_oxidized_copper_grate","minecraft:copper_bulb","minecraft:exposed_copper_bulb","minecraft:weathered_copper_bulb","minecraft:oxidized_copper_bulb","minecraft:waxed_copper_bulb","minecraft:waxed_exposed_copper_bulb","minecraft:waxed_weathered_copper_bulb","minecraft:waxed_oxidized_copper_bulb","minecraft:copper_chest","minecraft:exposed_copper_chest","minecraft:weathered_copper_chest","minecraft:oxidized_copper_chest","minecraft:waxed_copper_chest","minecraft:waxed_exposed_copper_chest","minecraft:waxed_weathered_copper_chest","minecraft:waxed_oxidized_copper_chest","minecraft:copper_golem_statue","minecraft:exposed_copper_golem_statue","minecraft:weathered_copper_golem_statue","minecraft:oxidized_copper_golem_statue","minecraft:waxed_copper_golem_statue","minecraft:waxed_exposed_copper_golem_statue","minecraft:waxed_weathered_copper_golem_statue","minecraft:waxed_oxidized_copper_golem_statue","minecraft:trial_spawner","minecraft:trial_key","minecraft:ominous_trial_key","minecraft:vault","minecraft:ominous_bottle"]; impl DefaultableComponent for ItemModel { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = ITEM_MODEL_VALUES[item as usize]; Some(ItemModel { resource_location: value.into(), @@ -2065,7 +2069,7 @@ impl DefaultableComponent for ItemModel { #[rustfmt::skip] static ITEM_NAME_VALUES: [&str; 1505] = ["block.minecraft.air","block.minecraft.stone","block.minecraft.granite","block.minecraft.polished_granite","block.minecraft.diorite","block.minecraft.polished_diorite","block.minecraft.andesite","block.minecraft.polished_andesite","block.minecraft.deepslate","block.minecraft.cobbled_deepslate","block.minecraft.polished_deepslate","block.minecraft.calcite","block.minecraft.tuff","block.minecraft.tuff_slab","block.minecraft.tuff_stairs","block.minecraft.tuff_wall","block.minecraft.chiseled_tuff","block.minecraft.polished_tuff","block.minecraft.polished_tuff_slab","block.minecraft.polished_tuff_stairs","block.minecraft.polished_tuff_wall","block.minecraft.tuff_bricks","block.minecraft.tuff_brick_slab","block.minecraft.tuff_brick_stairs","block.minecraft.tuff_brick_wall","block.minecraft.chiseled_tuff_bricks","block.minecraft.dripstone_block","block.minecraft.grass_block","block.minecraft.dirt","block.minecraft.coarse_dirt","block.minecraft.podzol","block.minecraft.rooted_dirt","block.minecraft.mud","block.minecraft.crimson_nylium","block.minecraft.warped_nylium","block.minecraft.cobblestone","block.minecraft.oak_planks","block.minecraft.spruce_planks","block.minecraft.birch_planks","block.minecraft.jungle_planks","block.minecraft.acacia_planks","block.minecraft.cherry_planks","block.minecraft.dark_oak_planks","block.minecraft.pale_oak_planks","block.minecraft.mangrove_planks","block.minecraft.bamboo_planks","block.minecraft.crimson_planks","block.minecraft.warped_planks","block.minecraft.bamboo_mosaic","block.minecraft.oak_sapling","block.minecraft.spruce_sapling","block.minecraft.birch_sapling","block.minecraft.jungle_sapling","block.minecraft.acacia_sapling","block.minecraft.cherry_sapling","block.minecraft.dark_oak_sapling","block.minecraft.pale_oak_sapling","block.minecraft.mangrove_propagule","block.minecraft.bedrock","block.minecraft.sand","block.minecraft.suspicious_sand","block.minecraft.suspicious_gravel","block.minecraft.red_sand","block.minecraft.gravel","block.minecraft.coal_ore","block.minecraft.deepslate_coal_ore","block.minecraft.iron_ore","block.minecraft.deepslate_iron_ore","block.minecraft.copper_ore","block.minecraft.deepslate_copper_ore","block.minecraft.gold_ore","block.minecraft.deepslate_gold_ore","block.minecraft.redstone_ore","block.minecraft.deepslate_redstone_ore","block.minecraft.emerald_ore","block.minecraft.deepslate_emerald_ore","block.minecraft.lapis_ore","block.minecraft.deepslate_lapis_ore","block.minecraft.diamond_ore","block.minecraft.deepslate_diamond_ore","block.minecraft.nether_gold_ore","block.minecraft.nether_quartz_ore","block.minecraft.ancient_debris","block.minecraft.coal_block","block.minecraft.raw_iron_block","block.minecraft.raw_copper_block","block.minecraft.raw_gold_block","block.minecraft.heavy_core","block.minecraft.amethyst_block","block.minecraft.budding_amethyst","block.minecraft.iron_block","block.minecraft.copper_block","block.minecraft.gold_block","block.minecraft.diamond_block","block.minecraft.netherite_block","block.minecraft.exposed_copper","block.minecraft.weathered_copper","block.minecraft.oxidized_copper","block.minecraft.chiseled_copper","block.minecraft.exposed_chiseled_copper","block.minecraft.weathered_chiseled_copper","block.minecraft.oxidized_chiseled_copper","block.minecraft.cut_copper","block.minecraft.exposed_cut_copper","block.minecraft.weathered_cut_copper","block.minecraft.oxidized_cut_copper","block.minecraft.cut_copper_stairs","block.minecraft.exposed_cut_copper_stairs","block.minecraft.weathered_cut_copper_stairs","block.minecraft.oxidized_cut_copper_stairs","block.minecraft.cut_copper_slab","block.minecraft.exposed_cut_copper_slab","block.minecraft.weathered_cut_copper_slab","block.minecraft.oxidized_cut_copper_slab","block.minecraft.waxed_copper_block","block.minecraft.waxed_exposed_copper","block.minecraft.waxed_weathered_copper","block.minecraft.waxed_oxidized_copper","block.minecraft.waxed_chiseled_copper","block.minecraft.waxed_exposed_chiseled_copper","block.minecraft.waxed_weathered_chiseled_copper","block.minecraft.waxed_oxidized_chiseled_copper","block.minecraft.waxed_cut_copper","block.minecraft.waxed_exposed_cut_copper","block.minecraft.waxed_weathered_cut_copper","block.minecraft.waxed_oxidized_cut_copper","block.minecraft.waxed_cut_copper_stairs","block.minecraft.waxed_exposed_cut_copper_stairs","block.minecraft.waxed_weathered_cut_copper_stairs","block.minecraft.waxed_oxidized_cut_copper_stairs","block.minecraft.waxed_cut_copper_slab","block.minecraft.waxed_exposed_cut_copper_slab","block.minecraft.waxed_weathered_cut_copper_slab","block.minecraft.waxed_oxidized_cut_copper_slab","block.minecraft.oak_log","block.minecraft.spruce_log","block.minecraft.birch_log","block.minecraft.jungle_log","block.minecraft.acacia_log","block.minecraft.cherry_log","block.minecraft.pale_oak_log","block.minecraft.dark_oak_log","block.minecraft.mangrove_log","block.minecraft.mangrove_roots","block.minecraft.muddy_mangrove_roots","block.minecraft.crimson_stem","block.minecraft.warped_stem","block.minecraft.bamboo_block","block.minecraft.stripped_oak_log","block.minecraft.stripped_spruce_log","block.minecraft.stripped_birch_log","block.minecraft.stripped_jungle_log","block.minecraft.stripped_acacia_log","block.minecraft.stripped_cherry_log","block.minecraft.stripped_dark_oak_log","block.minecraft.stripped_pale_oak_log","block.minecraft.stripped_mangrove_log","block.minecraft.stripped_crimson_stem","block.minecraft.stripped_warped_stem","block.minecraft.stripped_oak_wood","block.minecraft.stripped_spruce_wood","block.minecraft.stripped_birch_wood","block.minecraft.stripped_jungle_wood","block.minecraft.stripped_acacia_wood","block.minecraft.stripped_cherry_wood","block.minecraft.stripped_dark_oak_wood","block.minecraft.stripped_pale_oak_wood","block.minecraft.stripped_mangrove_wood","block.minecraft.stripped_crimson_hyphae","block.minecraft.stripped_warped_hyphae","block.minecraft.stripped_bamboo_block","block.minecraft.oak_wood","block.minecraft.spruce_wood","block.minecraft.birch_wood","block.minecraft.jungle_wood","block.minecraft.acacia_wood","block.minecraft.cherry_wood","block.minecraft.pale_oak_wood","block.minecraft.dark_oak_wood","block.minecraft.mangrove_wood","block.minecraft.crimson_hyphae","block.minecraft.warped_hyphae","block.minecraft.oak_leaves","block.minecraft.spruce_leaves","block.minecraft.birch_leaves","block.minecraft.jungle_leaves","block.minecraft.acacia_leaves","block.minecraft.cherry_leaves","block.minecraft.dark_oak_leaves","block.minecraft.pale_oak_leaves","block.minecraft.mangrove_leaves","block.minecraft.azalea_leaves","block.minecraft.flowering_azalea_leaves","block.minecraft.sponge","block.minecraft.wet_sponge","block.minecraft.glass","block.minecraft.tinted_glass","block.minecraft.lapis_block","block.minecraft.sandstone","block.minecraft.chiseled_sandstone","block.minecraft.cut_sandstone","block.minecraft.cobweb","block.minecraft.short_grass","block.minecraft.fern","block.minecraft.bush","block.minecraft.azalea","block.minecraft.flowering_azalea","block.minecraft.dead_bush","block.minecraft.firefly_bush","block.minecraft.short_dry_grass","block.minecraft.tall_dry_grass","block.minecraft.seagrass","block.minecraft.sea_pickle","block.minecraft.white_wool","block.minecraft.orange_wool","block.minecraft.magenta_wool","block.minecraft.light_blue_wool","block.minecraft.yellow_wool","block.minecraft.lime_wool","block.minecraft.pink_wool","block.minecraft.gray_wool","block.minecraft.light_gray_wool","block.minecraft.cyan_wool","block.minecraft.purple_wool","block.minecraft.blue_wool","block.minecraft.brown_wool","block.minecraft.green_wool","block.minecraft.red_wool","block.minecraft.black_wool","block.minecraft.dandelion","block.minecraft.open_eyeblossom","block.minecraft.closed_eyeblossom","block.minecraft.poppy","block.minecraft.blue_orchid","block.minecraft.allium","block.minecraft.azure_bluet","block.minecraft.red_tulip","block.minecraft.orange_tulip","block.minecraft.white_tulip","block.minecraft.pink_tulip","block.minecraft.oxeye_daisy","block.minecraft.cornflower","block.minecraft.lily_of_the_valley","block.minecraft.wither_rose","block.minecraft.torchflower","block.minecraft.pitcher_plant","block.minecraft.spore_blossom","block.minecraft.brown_mushroom","block.minecraft.red_mushroom","block.minecraft.crimson_fungus","block.minecraft.warped_fungus","block.minecraft.crimson_roots","block.minecraft.warped_roots","block.minecraft.nether_sprouts","block.minecraft.weeping_vines","block.minecraft.twisting_vines","block.minecraft.sugar_cane","block.minecraft.kelp","block.minecraft.pink_petals","block.minecraft.wildflowers","block.minecraft.leaf_litter","block.minecraft.moss_carpet","block.minecraft.moss_block","block.minecraft.pale_moss_carpet","block.minecraft.pale_hanging_moss","block.minecraft.pale_moss_block","block.minecraft.hanging_roots","block.minecraft.big_dripleaf","block.minecraft.small_dripleaf","block.minecraft.bamboo","block.minecraft.oak_slab","block.minecraft.spruce_slab","block.minecraft.birch_slab","block.minecraft.jungle_slab","block.minecraft.acacia_slab","block.minecraft.cherry_slab","block.minecraft.dark_oak_slab","block.minecraft.pale_oak_slab","block.minecraft.mangrove_slab","block.minecraft.bamboo_slab","block.minecraft.bamboo_mosaic_slab","block.minecraft.crimson_slab","block.minecraft.warped_slab","block.minecraft.stone_slab","block.minecraft.smooth_stone_slab","block.minecraft.sandstone_slab","block.minecraft.cut_sandstone_slab","block.minecraft.petrified_oak_slab","block.minecraft.cobblestone_slab","block.minecraft.brick_slab","block.minecraft.stone_brick_slab","block.minecraft.mud_brick_slab","block.minecraft.nether_brick_slab","block.minecraft.quartz_slab","block.minecraft.red_sandstone_slab","block.minecraft.cut_red_sandstone_slab","block.minecraft.purpur_slab","block.minecraft.prismarine_slab","block.minecraft.prismarine_brick_slab","block.minecraft.dark_prismarine_slab","block.minecraft.smooth_quartz","block.minecraft.smooth_red_sandstone","block.minecraft.smooth_sandstone","block.minecraft.smooth_stone","block.minecraft.bricks","block.minecraft.acacia_shelf","block.minecraft.bamboo_shelf","block.minecraft.birch_shelf","block.minecraft.cherry_shelf","block.minecraft.crimson_shelf","block.minecraft.dark_oak_shelf","block.minecraft.jungle_shelf","block.minecraft.mangrove_shelf","block.minecraft.oak_shelf","block.minecraft.pale_oak_shelf","block.minecraft.spruce_shelf","block.minecraft.warped_shelf","block.minecraft.bookshelf","block.minecraft.chiseled_bookshelf","block.minecraft.decorated_pot","block.minecraft.mossy_cobblestone","block.minecraft.obsidian","block.minecraft.torch","block.minecraft.end_rod","block.minecraft.chorus_plant","block.minecraft.chorus_flower","block.minecraft.purpur_block","block.minecraft.purpur_pillar","block.minecraft.purpur_stairs","block.minecraft.spawner","block.minecraft.creaking_heart","block.minecraft.chest","block.minecraft.crafting_table","block.minecraft.farmland","block.minecraft.furnace","block.minecraft.ladder","block.minecraft.cobblestone_stairs","block.minecraft.snow","block.minecraft.ice","block.minecraft.snow_block","block.minecraft.cactus","block.minecraft.cactus_flower","block.minecraft.clay","block.minecraft.jukebox","block.minecraft.oak_fence","block.minecraft.spruce_fence","block.minecraft.birch_fence","block.minecraft.jungle_fence","block.minecraft.acacia_fence","block.minecraft.cherry_fence","block.minecraft.dark_oak_fence","block.minecraft.pale_oak_fence","block.minecraft.mangrove_fence","block.minecraft.bamboo_fence","block.minecraft.crimson_fence","block.minecraft.warped_fence","block.minecraft.pumpkin","block.minecraft.carved_pumpkin","block.minecraft.jack_o_lantern","block.minecraft.netherrack","block.minecraft.soul_sand","block.minecraft.soul_soil","block.minecraft.basalt","block.minecraft.polished_basalt","block.minecraft.smooth_basalt","block.minecraft.soul_torch","block.minecraft.copper_torch","block.minecraft.glowstone","block.minecraft.infested_stone","block.minecraft.infested_cobblestone","block.minecraft.infested_stone_bricks","block.minecraft.infested_mossy_stone_bricks","block.minecraft.infested_cracked_stone_bricks","block.minecraft.infested_chiseled_stone_bricks","block.minecraft.infested_deepslate","block.minecraft.stone_bricks","block.minecraft.mossy_stone_bricks","block.minecraft.cracked_stone_bricks","block.minecraft.chiseled_stone_bricks","block.minecraft.packed_mud","block.minecraft.mud_bricks","block.minecraft.deepslate_bricks","block.minecraft.cracked_deepslate_bricks","block.minecraft.deepslate_tiles","block.minecraft.cracked_deepslate_tiles","block.minecraft.chiseled_deepslate","block.minecraft.reinforced_deepslate","block.minecraft.brown_mushroom_block","block.minecraft.red_mushroom_block","block.minecraft.mushroom_stem","block.minecraft.iron_bars","block.minecraft.copper_bars","block.minecraft.exposed_copper_bars","block.minecraft.weathered_copper_bars","block.minecraft.oxidized_copper_bars","block.minecraft.waxed_copper_bars","block.minecraft.waxed_exposed_copper_bars","block.minecraft.waxed_weathered_copper_bars","block.minecraft.waxed_oxidized_copper_bars","block.minecraft.iron_chain","block.minecraft.copper_chain","block.minecraft.exposed_copper_chain","block.minecraft.weathered_copper_chain","block.minecraft.oxidized_copper_chain","block.minecraft.waxed_copper_chain","block.minecraft.waxed_exposed_copper_chain","block.minecraft.waxed_weathered_copper_chain","block.minecraft.waxed_oxidized_copper_chain","block.minecraft.glass_pane","block.minecraft.melon","block.minecraft.vine","block.minecraft.glow_lichen","item.minecraft.resin_clump","block.minecraft.resin_block","block.minecraft.resin_bricks","block.minecraft.resin_brick_stairs","block.minecraft.resin_brick_slab","block.minecraft.resin_brick_wall","block.minecraft.chiseled_resin_bricks","block.minecraft.brick_stairs","block.minecraft.stone_brick_stairs","block.minecraft.mud_brick_stairs","block.minecraft.mycelium","block.minecraft.lily_pad","block.minecraft.nether_bricks","block.minecraft.cracked_nether_bricks","block.minecraft.chiseled_nether_bricks","block.minecraft.nether_brick_fence","block.minecraft.nether_brick_stairs","block.minecraft.sculk","block.minecraft.sculk_vein","block.minecraft.sculk_catalyst","block.minecraft.sculk_shrieker","block.minecraft.enchanting_table","block.minecraft.end_portal_frame","block.minecraft.end_stone","block.minecraft.end_stone_bricks","block.minecraft.dragon_egg","block.minecraft.sandstone_stairs","block.minecraft.ender_chest","block.minecraft.emerald_block","block.minecraft.oak_stairs","block.minecraft.spruce_stairs","block.minecraft.birch_stairs","block.minecraft.jungle_stairs","block.minecraft.acacia_stairs","block.minecraft.cherry_stairs","block.minecraft.dark_oak_stairs","block.minecraft.pale_oak_stairs","block.minecraft.mangrove_stairs","block.minecraft.bamboo_stairs","block.minecraft.bamboo_mosaic_stairs","block.minecraft.crimson_stairs","block.minecraft.warped_stairs","block.minecraft.command_block","block.minecraft.beacon","block.minecraft.cobblestone_wall","block.minecraft.mossy_cobblestone_wall","block.minecraft.brick_wall","block.minecraft.prismarine_wall","block.minecraft.red_sandstone_wall","block.minecraft.mossy_stone_brick_wall","block.minecraft.granite_wall","block.minecraft.stone_brick_wall","block.minecraft.mud_brick_wall","block.minecraft.nether_brick_wall","block.minecraft.andesite_wall","block.minecraft.red_nether_brick_wall","block.minecraft.sandstone_wall","block.minecraft.end_stone_brick_wall","block.minecraft.diorite_wall","block.minecraft.blackstone_wall","block.minecraft.polished_blackstone_wall","block.minecraft.polished_blackstone_brick_wall","block.minecraft.cobbled_deepslate_wall","block.minecraft.polished_deepslate_wall","block.minecraft.deepslate_brick_wall","block.minecraft.deepslate_tile_wall","block.minecraft.anvil","block.minecraft.chipped_anvil","block.minecraft.damaged_anvil","block.minecraft.chiseled_quartz_block","block.minecraft.quartz_block","block.minecraft.quartz_bricks","block.minecraft.quartz_pillar","block.minecraft.quartz_stairs","block.minecraft.white_terracotta","block.minecraft.orange_terracotta","block.minecraft.magenta_terracotta","block.minecraft.light_blue_terracotta","block.minecraft.yellow_terracotta","block.minecraft.lime_terracotta","block.minecraft.pink_terracotta","block.minecraft.gray_terracotta","block.minecraft.light_gray_terracotta","block.minecraft.cyan_terracotta","block.minecraft.purple_terracotta","block.minecraft.blue_terracotta","block.minecraft.brown_terracotta","block.minecraft.green_terracotta","block.minecraft.red_terracotta","block.minecraft.black_terracotta","block.minecraft.barrier","block.minecraft.light","block.minecraft.hay_block","block.minecraft.white_carpet","block.minecraft.orange_carpet","block.minecraft.magenta_carpet","block.minecraft.light_blue_carpet","block.minecraft.yellow_carpet","block.minecraft.lime_carpet","block.minecraft.pink_carpet","block.minecraft.gray_carpet","block.minecraft.light_gray_carpet","block.minecraft.cyan_carpet","block.minecraft.purple_carpet","block.minecraft.blue_carpet","block.minecraft.brown_carpet","block.minecraft.green_carpet","block.minecraft.red_carpet","block.minecraft.black_carpet","block.minecraft.terracotta","block.minecraft.packed_ice","block.minecraft.dirt_path","block.minecraft.sunflower","block.minecraft.lilac","block.minecraft.rose_bush","block.minecraft.peony","block.minecraft.tall_grass","block.minecraft.large_fern","block.minecraft.white_stained_glass","block.minecraft.orange_stained_glass","block.minecraft.magenta_stained_glass","block.minecraft.light_blue_stained_glass","block.minecraft.yellow_stained_glass","block.minecraft.lime_stained_glass","block.minecraft.pink_stained_glass","block.minecraft.gray_stained_glass","block.minecraft.light_gray_stained_glass","block.minecraft.cyan_stained_glass","block.minecraft.purple_stained_glass","block.minecraft.blue_stained_glass","block.minecraft.brown_stained_glass","block.minecraft.green_stained_glass","block.minecraft.red_stained_glass","block.minecraft.black_stained_glass","block.minecraft.white_stained_glass_pane","block.minecraft.orange_stained_glass_pane","block.minecraft.magenta_stained_glass_pane","block.minecraft.light_blue_stained_glass_pane","block.minecraft.yellow_stained_glass_pane","block.minecraft.lime_stained_glass_pane","block.minecraft.pink_stained_glass_pane","block.minecraft.gray_stained_glass_pane","block.minecraft.light_gray_stained_glass_pane","block.minecraft.cyan_stained_glass_pane","block.minecraft.purple_stained_glass_pane","block.minecraft.blue_stained_glass_pane","block.minecraft.brown_stained_glass_pane","block.minecraft.green_stained_glass_pane","block.minecraft.red_stained_glass_pane","block.minecraft.black_stained_glass_pane","block.minecraft.prismarine","block.minecraft.prismarine_bricks","block.minecraft.dark_prismarine","block.minecraft.prismarine_stairs","block.minecraft.prismarine_brick_stairs","block.minecraft.dark_prismarine_stairs","block.minecraft.sea_lantern","block.minecraft.red_sandstone","block.minecraft.chiseled_red_sandstone","block.minecraft.cut_red_sandstone","block.minecraft.red_sandstone_stairs","block.minecraft.repeating_command_block","block.minecraft.chain_command_block","block.minecraft.magma_block","block.minecraft.nether_wart_block","block.minecraft.warped_wart_block","block.minecraft.red_nether_bricks","block.minecraft.bone_block","block.minecraft.structure_void","block.minecraft.shulker_box","block.minecraft.white_shulker_box","block.minecraft.orange_shulker_box","block.minecraft.magenta_shulker_box","block.minecraft.light_blue_shulker_box","block.minecraft.yellow_shulker_box","block.minecraft.lime_shulker_box","block.minecraft.pink_shulker_box","block.minecraft.gray_shulker_box","block.minecraft.light_gray_shulker_box","block.minecraft.cyan_shulker_box","block.minecraft.purple_shulker_box","block.minecraft.blue_shulker_box","block.minecraft.brown_shulker_box","block.minecraft.green_shulker_box","block.minecraft.red_shulker_box","block.minecraft.black_shulker_box","block.minecraft.white_glazed_terracotta","block.minecraft.orange_glazed_terracotta","block.minecraft.magenta_glazed_terracotta","block.minecraft.light_blue_glazed_terracotta","block.minecraft.yellow_glazed_terracotta","block.minecraft.lime_glazed_terracotta","block.minecraft.pink_glazed_terracotta","block.minecraft.gray_glazed_terracotta","block.minecraft.light_gray_glazed_terracotta","block.minecraft.cyan_glazed_terracotta","block.minecraft.purple_glazed_terracotta","block.minecraft.blue_glazed_terracotta","block.minecraft.brown_glazed_terracotta","block.minecraft.green_glazed_terracotta","block.minecraft.red_glazed_terracotta","block.minecraft.black_glazed_terracotta","block.minecraft.white_concrete","block.minecraft.orange_concrete","block.minecraft.magenta_concrete","block.minecraft.light_blue_concrete","block.minecraft.yellow_concrete","block.minecraft.lime_concrete","block.minecraft.pink_concrete","block.minecraft.gray_concrete","block.minecraft.light_gray_concrete","block.minecraft.cyan_concrete","block.minecraft.purple_concrete","block.minecraft.blue_concrete","block.minecraft.brown_concrete","block.minecraft.green_concrete","block.minecraft.red_concrete","block.minecraft.black_concrete","block.minecraft.white_concrete_powder","block.minecraft.orange_concrete_powder","block.minecraft.magenta_concrete_powder","block.minecraft.light_blue_concrete_powder","block.minecraft.yellow_concrete_powder","block.minecraft.lime_concrete_powder","block.minecraft.pink_concrete_powder","block.minecraft.gray_concrete_powder","block.minecraft.light_gray_concrete_powder","block.minecraft.cyan_concrete_powder","block.minecraft.purple_concrete_powder","block.minecraft.blue_concrete_powder","block.minecraft.brown_concrete_powder","block.minecraft.green_concrete_powder","block.minecraft.red_concrete_powder","block.minecraft.black_concrete_powder","block.minecraft.turtle_egg","block.minecraft.sniffer_egg","block.minecraft.dried_ghast","block.minecraft.dead_tube_coral_block","block.minecraft.dead_brain_coral_block","block.minecraft.dead_bubble_coral_block","block.minecraft.dead_fire_coral_block","block.minecraft.dead_horn_coral_block","block.minecraft.tube_coral_block","block.minecraft.brain_coral_block","block.minecraft.bubble_coral_block","block.minecraft.fire_coral_block","block.minecraft.horn_coral_block","block.minecraft.tube_coral","block.minecraft.brain_coral","block.minecraft.bubble_coral","block.minecraft.fire_coral","block.minecraft.horn_coral","block.minecraft.dead_brain_coral","block.minecraft.dead_bubble_coral","block.minecraft.dead_fire_coral","block.minecraft.dead_horn_coral","block.minecraft.dead_tube_coral","block.minecraft.tube_coral_fan","block.minecraft.brain_coral_fan","block.minecraft.bubble_coral_fan","block.minecraft.fire_coral_fan","block.minecraft.horn_coral_fan","block.minecraft.dead_tube_coral_fan","block.minecraft.dead_brain_coral_fan","block.minecraft.dead_bubble_coral_fan","block.minecraft.dead_fire_coral_fan","block.minecraft.dead_horn_coral_fan","block.minecraft.blue_ice","block.minecraft.conduit","block.minecraft.polished_granite_stairs","block.minecraft.smooth_red_sandstone_stairs","block.minecraft.mossy_stone_brick_stairs","block.minecraft.polished_diorite_stairs","block.minecraft.mossy_cobblestone_stairs","block.minecraft.end_stone_brick_stairs","block.minecraft.stone_stairs","block.minecraft.smooth_sandstone_stairs","block.minecraft.smooth_quartz_stairs","block.minecraft.granite_stairs","block.minecraft.andesite_stairs","block.minecraft.red_nether_brick_stairs","block.minecraft.polished_andesite_stairs","block.minecraft.diorite_stairs","block.minecraft.cobbled_deepslate_stairs","block.minecraft.polished_deepslate_stairs","block.minecraft.deepslate_brick_stairs","block.minecraft.deepslate_tile_stairs","block.minecraft.polished_granite_slab","block.minecraft.smooth_red_sandstone_slab","block.minecraft.mossy_stone_brick_slab","block.minecraft.polished_diorite_slab","block.minecraft.mossy_cobblestone_slab","block.minecraft.end_stone_brick_slab","block.minecraft.smooth_sandstone_slab","block.minecraft.smooth_quartz_slab","block.minecraft.granite_slab","block.minecraft.andesite_slab","block.minecraft.red_nether_brick_slab","block.minecraft.polished_andesite_slab","block.minecraft.diorite_slab","block.minecraft.cobbled_deepslate_slab","block.minecraft.polished_deepslate_slab","block.minecraft.deepslate_brick_slab","block.minecraft.deepslate_tile_slab","block.minecraft.scaffolding","item.minecraft.redstone","block.minecraft.redstone_torch","block.minecraft.redstone_block","block.minecraft.repeater","block.minecraft.comparator","block.minecraft.piston","block.minecraft.sticky_piston","block.minecraft.slime_block","block.minecraft.honey_block","block.minecraft.observer","block.minecraft.hopper","block.minecraft.dispenser","block.minecraft.dropper","block.minecraft.lectern","block.minecraft.target","block.minecraft.lever","block.minecraft.lightning_rod","block.minecraft.exposed_lightning_rod","block.minecraft.weathered_lightning_rod","block.minecraft.oxidized_lightning_rod","block.minecraft.waxed_lightning_rod","block.minecraft.waxed_exposed_lightning_rod","block.minecraft.waxed_weathered_lightning_rod","block.minecraft.waxed_oxidized_lightning_rod","block.minecraft.daylight_detector","block.minecraft.sculk_sensor","block.minecraft.calibrated_sculk_sensor","block.minecraft.tripwire_hook","block.minecraft.trapped_chest","block.minecraft.tnt","block.minecraft.redstone_lamp","block.minecraft.note_block","block.minecraft.stone_button","block.minecraft.polished_blackstone_button","block.minecraft.oak_button","block.minecraft.spruce_button","block.minecraft.birch_button","block.minecraft.jungle_button","block.minecraft.acacia_button","block.minecraft.cherry_button","block.minecraft.dark_oak_button","block.minecraft.pale_oak_button","block.minecraft.mangrove_button","block.minecraft.bamboo_button","block.minecraft.crimson_button","block.minecraft.warped_button","block.minecraft.stone_pressure_plate","block.minecraft.polished_blackstone_pressure_plate","block.minecraft.light_weighted_pressure_plate","block.minecraft.heavy_weighted_pressure_plate","block.minecraft.oak_pressure_plate","block.minecraft.spruce_pressure_plate","block.minecraft.birch_pressure_plate","block.minecraft.jungle_pressure_plate","block.minecraft.acacia_pressure_plate","block.minecraft.cherry_pressure_plate","block.minecraft.dark_oak_pressure_plate","block.minecraft.pale_oak_pressure_plate","block.minecraft.mangrove_pressure_plate","block.minecraft.bamboo_pressure_plate","block.minecraft.crimson_pressure_plate","block.minecraft.warped_pressure_plate","block.minecraft.iron_door","block.minecraft.oak_door","block.minecraft.spruce_door","block.minecraft.birch_door","block.minecraft.jungle_door","block.minecraft.acacia_door","block.minecraft.cherry_door","block.minecraft.dark_oak_door","block.minecraft.pale_oak_door","block.minecraft.mangrove_door","block.minecraft.bamboo_door","block.minecraft.crimson_door","block.minecraft.warped_door","block.minecraft.copper_door","block.minecraft.exposed_copper_door","block.minecraft.weathered_copper_door","block.minecraft.oxidized_copper_door","block.minecraft.waxed_copper_door","block.minecraft.waxed_exposed_copper_door","block.minecraft.waxed_weathered_copper_door","block.minecraft.waxed_oxidized_copper_door","block.minecraft.iron_trapdoor","block.minecraft.oak_trapdoor","block.minecraft.spruce_trapdoor","block.minecraft.birch_trapdoor","block.minecraft.jungle_trapdoor","block.minecraft.acacia_trapdoor","block.minecraft.cherry_trapdoor","block.minecraft.dark_oak_trapdoor","block.minecraft.pale_oak_trapdoor","block.minecraft.mangrove_trapdoor","block.minecraft.bamboo_trapdoor","block.minecraft.crimson_trapdoor","block.minecraft.warped_trapdoor","block.minecraft.copper_trapdoor","block.minecraft.exposed_copper_trapdoor","block.minecraft.weathered_copper_trapdoor","block.minecraft.oxidized_copper_trapdoor","block.minecraft.waxed_copper_trapdoor","block.minecraft.waxed_exposed_copper_trapdoor","block.minecraft.waxed_weathered_copper_trapdoor","block.minecraft.waxed_oxidized_copper_trapdoor","block.minecraft.oak_fence_gate","block.minecraft.spruce_fence_gate","block.minecraft.birch_fence_gate","block.minecraft.jungle_fence_gate","block.minecraft.acacia_fence_gate","block.minecraft.cherry_fence_gate","block.minecraft.dark_oak_fence_gate","block.minecraft.pale_oak_fence_gate","block.minecraft.mangrove_fence_gate","block.minecraft.bamboo_fence_gate","block.minecraft.crimson_fence_gate","block.minecraft.warped_fence_gate","block.minecraft.powered_rail","block.minecraft.detector_rail","block.minecraft.rail","block.minecraft.activator_rail","item.minecraft.saddle","item.minecraft.white_harness","item.minecraft.orange_harness","item.minecraft.magenta_harness","item.minecraft.light_blue_harness","item.minecraft.yellow_harness","item.minecraft.lime_harness","item.minecraft.pink_harness","item.minecraft.gray_harness","item.minecraft.light_gray_harness","item.minecraft.cyan_harness","item.minecraft.purple_harness","item.minecraft.blue_harness","item.minecraft.brown_harness","item.minecraft.green_harness","item.minecraft.red_harness","item.minecraft.black_harness","item.minecraft.minecart","item.minecraft.chest_minecart","item.minecraft.furnace_minecart","item.minecraft.tnt_minecart","item.minecraft.hopper_minecart","item.minecraft.carrot_on_a_stick","item.minecraft.warped_fungus_on_a_stick","item.minecraft.phantom_membrane","item.minecraft.elytra","item.minecraft.oak_boat","item.minecraft.oak_chest_boat","item.minecraft.spruce_boat","item.minecraft.spruce_chest_boat","item.minecraft.birch_boat","item.minecraft.birch_chest_boat","item.minecraft.jungle_boat","item.minecraft.jungle_chest_boat","item.minecraft.acacia_boat","item.minecraft.acacia_chest_boat","item.minecraft.cherry_boat","item.minecraft.cherry_chest_boat","item.minecraft.dark_oak_boat","item.minecraft.dark_oak_chest_boat","item.minecraft.pale_oak_boat","item.minecraft.pale_oak_chest_boat","item.minecraft.mangrove_boat","item.minecraft.mangrove_chest_boat","item.minecraft.bamboo_raft","item.minecraft.bamboo_chest_raft","block.minecraft.structure_block","block.minecraft.jigsaw","block.minecraft.test_block","block.minecraft.test_instance_block","item.minecraft.turtle_helmet","item.minecraft.turtle_scute","item.minecraft.armadillo_scute","item.minecraft.wolf_armor","item.minecraft.flint_and_steel","item.minecraft.bowl","item.minecraft.apple","item.minecraft.bow","item.minecraft.arrow","item.minecraft.coal","item.minecraft.charcoal","item.minecraft.diamond","item.minecraft.emerald","item.minecraft.lapis_lazuli","item.minecraft.quartz","item.minecraft.amethyst_shard","item.minecraft.raw_iron","item.minecraft.iron_ingot","item.minecraft.raw_copper","item.minecraft.copper_ingot","item.minecraft.raw_gold","item.minecraft.gold_ingot","item.minecraft.netherite_ingot","item.minecraft.netherite_scrap","item.minecraft.wooden_sword","item.minecraft.wooden_shovel","item.minecraft.wooden_pickaxe","item.minecraft.wooden_axe","item.minecraft.wooden_hoe","item.minecraft.copper_sword","item.minecraft.copper_shovel","item.minecraft.copper_pickaxe","item.minecraft.copper_axe","item.minecraft.copper_hoe","item.minecraft.stone_sword","item.minecraft.stone_shovel","item.minecraft.stone_pickaxe","item.minecraft.stone_axe","item.minecraft.stone_hoe","item.minecraft.golden_sword","item.minecraft.golden_shovel","item.minecraft.golden_pickaxe","item.minecraft.golden_axe","item.minecraft.golden_hoe","item.minecraft.iron_sword","item.minecraft.iron_shovel","item.minecraft.iron_pickaxe","item.minecraft.iron_axe","item.minecraft.iron_hoe","item.minecraft.diamond_sword","item.minecraft.diamond_shovel","item.minecraft.diamond_pickaxe","item.minecraft.diamond_axe","item.minecraft.diamond_hoe","item.minecraft.netherite_sword","item.minecraft.netherite_shovel","item.minecraft.netherite_pickaxe","item.minecraft.netherite_axe","item.minecraft.netherite_hoe","item.minecraft.stick","item.minecraft.mushroom_stew","item.minecraft.string","item.minecraft.feather","item.minecraft.gunpowder","item.minecraft.wheat_seeds","item.minecraft.wheat","item.minecraft.bread","item.minecraft.leather_helmet","item.minecraft.leather_chestplate","item.minecraft.leather_leggings","item.minecraft.leather_boots","item.minecraft.copper_helmet","item.minecraft.copper_chestplate","item.minecraft.copper_leggings","item.minecraft.copper_boots","item.minecraft.chainmail_helmet","item.minecraft.chainmail_chestplate","item.minecraft.chainmail_leggings","item.minecraft.chainmail_boots","item.minecraft.iron_helmet","item.minecraft.iron_chestplate","item.minecraft.iron_leggings","item.minecraft.iron_boots","item.minecraft.diamond_helmet","item.minecraft.diamond_chestplate","item.minecraft.diamond_leggings","item.minecraft.diamond_boots","item.minecraft.golden_helmet","item.minecraft.golden_chestplate","item.minecraft.golden_leggings","item.minecraft.golden_boots","item.minecraft.netherite_helmet","item.minecraft.netherite_chestplate","item.minecraft.netherite_leggings","item.minecraft.netherite_boots","item.minecraft.flint","item.minecraft.porkchop","item.minecraft.cooked_porkchop","item.minecraft.painting","item.minecraft.golden_apple","item.minecraft.enchanted_golden_apple","block.minecraft.oak_sign","block.minecraft.spruce_sign","block.minecraft.birch_sign","block.minecraft.jungle_sign","block.minecraft.acacia_sign","block.minecraft.cherry_sign","block.minecraft.dark_oak_sign","block.minecraft.pale_oak_sign","block.minecraft.mangrove_sign","block.minecraft.bamboo_sign","block.minecraft.crimson_sign","block.minecraft.warped_sign","block.minecraft.oak_hanging_sign","block.minecraft.spruce_hanging_sign","block.minecraft.birch_hanging_sign","block.minecraft.jungle_hanging_sign","block.minecraft.acacia_hanging_sign","block.minecraft.cherry_hanging_sign","block.minecraft.dark_oak_hanging_sign","block.minecraft.pale_oak_hanging_sign","block.minecraft.mangrove_hanging_sign","block.minecraft.bamboo_hanging_sign","block.minecraft.crimson_hanging_sign","block.minecraft.warped_hanging_sign","item.minecraft.bucket","item.minecraft.water_bucket","item.minecraft.lava_bucket","item.minecraft.powder_snow_bucket","item.minecraft.snowball","item.minecraft.leather","item.minecraft.milk_bucket","item.minecraft.pufferfish_bucket","item.minecraft.salmon_bucket","item.minecraft.cod_bucket","item.minecraft.tropical_fish_bucket","item.minecraft.axolotl_bucket","item.minecraft.tadpole_bucket","item.minecraft.brick","item.minecraft.clay_ball","block.minecraft.dried_kelp_block","item.minecraft.paper","item.minecraft.book","item.minecraft.slime_ball","item.minecraft.egg","item.minecraft.blue_egg","item.minecraft.brown_egg","item.minecraft.compass","item.minecraft.recovery_compass","item.minecraft.bundle","item.minecraft.white_bundle","item.minecraft.orange_bundle","item.minecraft.magenta_bundle","item.minecraft.light_blue_bundle","item.minecraft.yellow_bundle","item.minecraft.lime_bundle","item.minecraft.pink_bundle","item.minecraft.gray_bundle","item.minecraft.light_gray_bundle","item.minecraft.cyan_bundle","item.minecraft.purple_bundle","item.minecraft.blue_bundle","item.minecraft.brown_bundle","item.minecraft.green_bundle","item.minecraft.red_bundle","item.minecraft.black_bundle","item.minecraft.fishing_rod","item.minecraft.clock","item.minecraft.spyglass","item.minecraft.glowstone_dust","item.minecraft.cod","item.minecraft.salmon","item.minecraft.tropical_fish","item.minecraft.pufferfish","item.minecraft.cooked_cod","item.minecraft.cooked_salmon","item.minecraft.ink_sac","item.minecraft.glow_ink_sac","item.minecraft.cocoa_beans","item.minecraft.white_dye","item.minecraft.orange_dye","item.minecraft.magenta_dye","item.minecraft.light_blue_dye","item.minecraft.yellow_dye","item.minecraft.lime_dye","item.minecraft.pink_dye","item.minecraft.gray_dye","item.minecraft.light_gray_dye","item.minecraft.cyan_dye","item.minecraft.purple_dye","item.minecraft.blue_dye","item.minecraft.brown_dye","item.minecraft.green_dye","item.minecraft.red_dye","item.minecraft.black_dye","item.minecraft.bone_meal","item.minecraft.bone","item.minecraft.sugar","block.minecraft.cake","block.minecraft.white_bed","block.minecraft.orange_bed","block.minecraft.magenta_bed","block.minecraft.light_blue_bed","block.minecraft.yellow_bed","block.minecraft.lime_bed","block.minecraft.pink_bed","block.minecraft.gray_bed","block.minecraft.light_gray_bed","block.minecraft.cyan_bed","block.minecraft.purple_bed","block.minecraft.blue_bed","block.minecraft.brown_bed","block.minecraft.green_bed","block.minecraft.red_bed","block.minecraft.black_bed","item.minecraft.cookie","block.minecraft.crafter","item.minecraft.filled_map","item.minecraft.shears","item.minecraft.melon_slice","item.minecraft.dried_kelp","item.minecraft.pumpkin_seeds","item.minecraft.melon_seeds","item.minecraft.beef","item.minecraft.cooked_beef","item.minecraft.chicken","item.minecraft.cooked_chicken","item.minecraft.rotten_flesh","item.minecraft.ender_pearl","item.minecraft.blaze_rod","item.minecraft.ghast_tear","item.minecraft.gold_nugget","item.minecraft.nether_wart","item.minecraft.glass_bottle","item.minecraft.potion","item.minecraft.spider_eye","item.minecraft.fermented_spider_eye","item.minecraft.blaze_powder","item.minecraft.magma_cream","block.minecraft.brewing_stand","block.minecraft.cauldron","item.minecraft.ender_eye","item.minecraft.glistering_melon_slice","item.minecraft.chicken_spawn_egg","item.minecraft.cow_spawn_egg","item.minecraft.pig_spawn_egg","item.minecraft.sheep_spawn_egg","item.minecraft.camel_spawn_egg","item.minecraft.donkey_spawn_egg","item.minecraft.horse_spawn_egg","item.minecraft.mule_spawn_egg","item.minecraft.cat_spawn_egg","item.minecraft.parrot_spawn_egg","item.minecraft.wolf_spawn_egg","item.minecraft.armadillo_spawn_egg","item.minecraft.bat_spawn_egg","item.minecraft.bee_spawn_egg","item.minecraft.fox_spawn_egg","item.minecraft.goat_spawn_egg","item.minecraft.llama_spawn_egg","item.minecraft.ocelot_spawn_egg","item.minecraft.panda_spawn_egg","item.minecraft.polar_bear_spawn_egg","item.minecraft.rabbit_spawn_egg","item.minecraft.axolotl_spawn_egg","item.minecraft.cod_spawn_egg","item.minecraft.dolphin_spawn_egg","item.minecraft.frog_spawn_egg","item.minecraft.glow_squid_spawn_egg","item.minecraft.nautilus_spawn_egg","item.minecraft.pufferfish_spawn_egg","item.minecraft.salmon_spawn_egg","item.minecraft.squid_spawn_egg","item.minecraft.tadpole_spawn_egg","item.minecraft.tropical_fish_spawn_egg","item.minecraft.turtle_spawn_egg","item.minecraft.allay_spawn_egg","item.minecraft.mooshroom_spawn_egg","item.minecraft.sniffer_spawn_egg","item.minecraft.copper_golem_spawn_egg","item.minecraft.iron_golem_spawn_egg","item.minecraft.snow_golem_spawn_egg","item.minecraft.trader_llama_spawn_egg","item.minecraft.villager_spawn_egg","item.minecraft.wandering_trader_spawn_egg","item.minecraft.bogged_spawn_egg","item.minecraft.camel_husk_spawn_egg","item.minecraft.drowned_spawn_egg","item.minecraft.husk_spawn_egg","item.minecraft.parched_spawn_egg","item.minecraft.skeleton_spawn_egg","item.minecraft.skeleton_horse_spawn_egg","item.minecraft.stray_spawn_egg","item.minecraft.wither_spawn_egg","item.minecraft.wither_skeleton_spawn_egg","item.minecraft.zombie_spawn_egg","item.minecraft.zombie_horse_spawn_egg","item.minecraft.zombie_nautilus_spawn_egg","item.minecraft.zombie_villager_spawn_egg","item.minecraft.cave_spider_spawn_egg","item.minecraft.spider_spawn_egg","item.minecraft.breeze_spawn_egg","item.minecraft.creaking_spawn_egg","item.minecraft.creeper_spawn_egg","item.minecraft.elder_guardian_spawn_egg","item.minecraft.guardian_spawn_egg","item.minecraft.phantom_spawn_egg","item.minecraft.silverfish_spawn_egg","item.minecraft.slime_spawn_egg","item.minecraft.warden_spawn_egg","item.minecraft.witch_spawn_egg","item.minecraft.evoker_spawn_egg","item.minecraft.pillager_spawn_egg","item.minecraft.ravager_spawn_egg","item.minecraft.vindicator_spawn_egg","item.minecraft.vex_spawn_egg","item.minecraft.blaze_spawn_egg","item.minecraft.ghast_spawn_egg","item.minecraft.happy_ghast_spawn_egg","item.minecraft.hoglin_spawn_egg","item.minecraft.magma_cube_spawn_egg","item.minecraft.piglin_spawn_egg","item.minecraft.piglin_brute_spawn_egg","item.minecraft.strider_spawn_egg","item.minecraft.zoglin_spawn_egg","item.minecraft.zombified_piglin_spawn_egg","item.minecraft.ender_dragon_spawn_egg","item.minecraft.enderman_spawn_egg","item.minecraft.endermite_spawn_egg","item.minecraft.shulker_spawn_egg","item.minecraft.experience_bottle","item.minecraft.fire_charge","item.minecraft.wind_charge","item.minecraft.writable_book","item.minecraft.written_book","item.minecraft.breeze_rod","item.minecraft.mace","item.minecraft.item_frame","item.minecraft.glow_item_frame","block.minecraft.flower_pot","item.minecraft.carrot","item.minecraft.potato","item.minecraft.baked_potato","item.minecraft.poisonous_potato","item.minecraft.map","item.minecraft.golden_carrot","block.minecraft.skeleton_skull","block.minecraft.wither_skeleton_skull","block.minecraft.player_head","block.minecraft.zombie_head","block.minecraft.creeper_head","block.minecraft.dragon_head","block.minecraft.piglin_head","item.minecraft.nether_star","item.minecraft.pumpkin_pie","item.minecraft.firework_rocket","item.minecraft.firework_star","item.minecraft.enchanted_book","item.minecraft.nether_brick","item.minecraft.resin_brick","item.minecraft.prismarine_shard","item.minecraft.prismarine_crystals","item.minecraft.rabbit","item.minecraft.cooked_rabbit","item.minecraft.rabbit_stew","item.minecraft.rabbit_foot","item.minecraft.rabbit_hide","item.minecraft.armor_stand","item.minecraft.copper_horse_armor","item.minecraft.iron_horse_armor","item.minecraft.golden_horse_armor","item.minecraft.diamond_horse_armor","item.minecraft.netherite_horse_armor","item.minecraft.leather_horse_armor","item.minecraft.lead","item.minecraft.name_tag","item.minecraft.command_block_minecart","item.minecraft.mutton","item.minecraft.cooked_mutton","block.minecraft.white_banner","block.minecraft.orange_banner","block.minecraft.magenta_banner","block.minecraft.light_blue_banner","block.minecraft.yellow_banner","block.minecraft.lime_banner","block.minecraft.pink_banner","block.minecraft.gray_banner","block.minecraft.light_gray_banner","block.minecraft.cyan_banner","block.minecraft.purple_banner","block.minecraft.blue_banner","block.minecraft.brown_banner","block.minecraft.green_banner","block.minecraft.red_banner","block.minecraft.black_banner","item.minecraft.end_crystal","item.minecraft.chorus_fruit","item.minecraft.popped_chorus_fruit","item.minecraft.torchflower_seeds","item.minecraft.pitcher_pod","item.minecraft.beetroot","item.minecraft.beetroot_seeds","item.minecraft.beetroot_soup","item.minecraft.dragon_breath","item.minecraft.splash_potion","item.minecraft.spectral_arrow","item.minecraft.tipped_arrow","item.minecraft.lingering_potion","item.minecraft.shield","item.minecraft.wooden_spear","item.minecraft.stone_spear","item.minecraft.copper_spear","item.minecraft.iron_spear","item.minecraft.golden_spear","item.minecraft.diamond_spear","item.minecraft.netherite_spear","item.minecraft.totem_of_undying","item.minecraft.shulker_shell","item.minecraft.iron_nugget","item.minecraft.copper_nugget","item.minecraft.knowledge_book","item.minecraft.debug_stick","item.minecraft.music_disc_13","item.minecraft.music_disc_cat","item.minecraft.music_disc_blocks","item.minecraft.music_disc_chirp","item.minecraft.music_disc_creator","item.minecraft.music_disc_creator_music_box","item.minecraft.music_disc_far","item.minecraft.music_disc_lava_chicken","item.minecraft.music_disc_mall","item.minecraft.music_disc_mellohi","item.minecraft.music_disc_stal","item.minecraft.music_disc_strad","item.minecraft.music_disc_ward","item.minecraft.music_disc_11","item.minecraft.music_disc_wait","item.minecraft.music_disc_otherside","item.minecraft.music_disc_relic","item.minecraft.music_disc_5","item.minecraft.music_disc_pigstep","item.minecraft.music_disc_precipice","item.minecraft.music_disc_tears","item.minecraft.disc_fragment_5","item.minecraft.trident","item.minecraft.nautilus_shell","item.minecraft.iron_nautilus_armor","item.minecraft.golden_nautilus_armor","item.minecraft.diamond_nautilus_armor","item.minecraft.netherite_nautilus_armor","item.minecraft.copper_nautilus_armor","item.minecraft.heart_of_the_sea","item.minecraft.crossbow","item.minecraft.suspicious_stew","block.minecraft.loom","item.minecraft.flower_banner_pattern","item.minecraft.creeper_banner_pattern","item.minecraft.skull_banner_pattern","item.minecraft.mojang_banner_pattern","item.minecraft.globe_banner_pattern","item.minecraft.piglin_banner_pattern","item.minecraft.flow_banner_pattern","item.minecraft.guster_banner_pattern","item.minecraft.field_masoned_banner_pattern","item.minecraft.bordure_indented_banner_pattern","item.minecraft.goat_horn","block.minecraft.composter","block.minecraft.barrel","block.minecraft.smoker","block.minecraft.blast_furnace","block.minecraft.cartography_table","block.minecraft.fletching_table","block.minecraft.grindstone","block.minecraft.smithing_table","block.minecraft.stonecutter","block.minecraft.bell","block.minecraft.lantern","block.minecraft.soul_lantern","block.minecraft.copper_lantern","block.minecraft.exposed_copper_lantern","block.minecraft.weathered_copper_lantern","block.minecraft.oxidized_copper_lantern","block.minecraft.waxed_copper_lantern","block.minecraft.waxed_exposed_copper_lantern","block.minecraft.waxed_weathered_copper_lantern","block.minecraft.waxed_oxidized_copper_lantern","item.minecraft.sweet_berries","item.minecraft.glow_berries","block.minecraft.campfire","block.minecraft.soul_campfire","block.minecraft.shroomlight","item.minecraft.honeycomb","block.minecraft.bee_nest","block.minecraft.beehive","item.minecraft.honey_bottle","block.minecraft.honeycomb_block","block.minecraft.lodestone","block.minecraft.crying_obsidian","block.minecraft.blackstone","block.minecraft.blackstone_slab","block.minecraft.blackstone_stairs","block.minecraft.gilded_blackstone","block.minecraft.polished_blackstone","block.minecraft.polished_blackstone_slab","block.minecraft.polished_blackstone_stairs","block.minecraft.chiseled_polished_blackstone","block.minecraft.polished_blackstone_bricks","block.minecraft.polished_blackstone_brick_slab","block.minecraft.polished_blackstone_brick_stairs","block.minecraft.cracked_polished_blackstone_bricks","block.minecraft.respawn_anchor","block.minecraft.candle","block.minecraft.white_candle","block.minecraft.orange_candle","block.minecraft.magenta_candle","block.minecraft.light_blue_candle","block.minecraft.yellow_candle","block.minecraft.lime_candle","block.minecraft.pink_candle","block.minecraft.gray_candle","block.minecraft.light_gray_candle","block.minecraft.cyan_candle","block.minecraft.purple_candle","block.minecraft.blue_candle","block.minecraft.brown_candle","block.minecraft.green_candle","block.minecraft.red_candle","block.minecraft.black_candle","block.minecraft.small_amethyst_bud","block.minecraft.medium_amethyst_bud","block.minecraft.large_amethyst_bud","block.minecraft.amethyst_cluster","block.minecraft.pointed_dripstone","block.minecraft.ochre_froglight","block.minecraft.verdant_froglight","block.minecraft.pearlescent_froglight","block.minecraft.frogspawn","item.minecraft.echo_shard","item.minecraft.brush","item.minecraft.netherite_upgrade_smithing_template","item.minecraft.sentry_armor_trim_smithing_template","item.minecraft.dune_armor_trim_smithing_template","item.minecraft.coast_armor_trim_smithing_template","item.minecraft.wild_armor_trim_smithing_template","item.minecraft.ward_armor_trim_smithing_template","item.minecraft.eye_armor_trim_smithing_template","item.minecraft.vex_armor_trim_smithing_template","item.minecraft.tide_armor_trim_smithing_template","item.minecraft.snout_armor_trim_smithing_template","item.minecraft.rib_armor_trim_smithing_template","item.minecraft.spire_armor_trim_smithing_template","item.minecraft.wayfinder_armor_trim_smithing_template","item.minecraft.shaper_armor_trim_smithing_template","item.minecraft.silence_armor_trim_smithing_template","item.minecraft.raiser_armor_trim_smithing_template","item.minecraft.host_armor_trim_smithing_template","item.minecraft.flow_armor_trim_smithing_template","item.minecraft.bolt_armor_trim_smithing_template","item.minecraft.angler_pottery_sherd","item.minecraft.archer_pottery_sherd","item.minecraft.arms_up_pottery_sherd","item.minecraft.blade_pottery_sherd","item.minecraft.brewer_pottery_sherd","item.minecraft.burn_pottery_sherd","item.minecraft.danger_pottery_sherd","item.minecraft.explorer_pottery_sherd","item.minecraft.flow_pottery_sherd","item.minecraft.friend_pottery_sherd","item.minecraft.guster_pottery_sherd","item.minecraft.heart_pottery_sherd","item.minecraft.heartbreak_pottery_sherd","item.minecraft.howl_pottery_sherd","item.minecraft.miner_pottery_sherd","item.minecraft.mourner_pottery_sherd","item.minecraft.plenty_pottery_sherd","item.minecraft.prize_pottery_sherd","item.minecraft.scrape_pottery_sherd","item.minecraft.sheaf_pottery_sherd","item.minecraft.shelter_pottery_sherd","item.minecraft.skull_pottery_sherd","item.minecraft.snort_pottery_sherd","block.minecraft.copper_grate","block.minecraft.exposed_copper_grate","block.minecraft.weathered_copper_grate","block.minecraft.oxidized_copper_grate","block.minecraft.waxed_copper_grate","block.minecraft.waxed_exposed_copper_grate","block.minecraft.waxed_weathered_copper_grate","block.minecraft.waxed_oxidized_copper_grate","block.minecraft.copper_bulb","block.minecraft.exposed_copper_bulb","block.minecraft.weathered_copper_bulb","block.minecraft.oxidized_copper_bulb","block.minecraft.waxed_copper_bulb","block.minecraft.waxed_exposed_copper_bulb","block.minecraft.waxed_weathered_copper_bulb","block.minecraft.waxed_oxidized_copper_bulb","block.minecraft.copper_chest","block.minecraft.exposed_copper_chest","block.minecraft.weathered_copper_chest","block.minecraft.oxidized_copper_chest","block.minecraft.waxed_copper_chest","block.minecraft.waxed_exposed_copper_chest","block.minecraft.waxed_weathered_copper_chest","block.minecraft.waxed_oxidized_copper_chest","block.minecraft.copper_golem_statue","block.minecraft.exposed_copper_golem_statue","block.minecraft.weathered_copper_golem_statue","block.minecraft.oxidized_copper_golem_statue","block.minecraft.waxed_copper_golem_statue","block.minecraft.waxed_exposed_copper_golem_statue","block.minecraft.waxed_weathered_copper_golem_statue","block.minecraft.waxed_oxidized_copper_golem_statue","block.minecraft.trial_spawner","item.minecraft.trial_key","item.minecraft.ominous_trial_key","block.minecraft.vault","item.minecraft.ominous_bottle"]; impl DefaultableComponent for ItemName { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = ITEM_NAME_VALUES[item as usize]; Some(ItemName { name: TranslatableComponent::from(value).into(), @@ -2073,173 +2077,173 @@ impl DefaultableComponent for ItemName { } } impl DefaultableComponent for Lore { - fn default_for_item(_item: Item) -> Option<Self> { + fn default_for_item(_item: ItemKind) -> Option<Self> { Some(Lore { lines: vec![] }) } } #[rustfmt::skip] static MAX_STACK_SIZE_VALUES: [i32; 1505] = [64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,64,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,64,64,64,64,1,64,64,1,1,64,64,1,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,64,1,64,64,64,64,64,64,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,64,64,64,64,64,64,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,1,1,1,16,64,1,1,1,1,1,1,1,64,64,64,64,64,64,16,16,16,64,64,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,64,1,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,64,64,64,1,64,64,64,64,64,64,64,64,64,16,64,64,64,64,64,1,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,1,16,64,1,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,1,64,64,64,64,64,64,1,64,64,16,1,1,1,1,1,1,64,64,1,64,64,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,64,64,64,64,64,64,64,1,64,1,64,64,1,1,1,1,1,1,1,1,1,1,64,64,64,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,64,1,64,1,1,1,1,1,64,1,1,64,1,1,1,1,1,1,1,1,1,1,1,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,16,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,1,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64]; impl DefaultableComponent for MaxStackSize { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = MAX_STACK_SIZE_VALUES[item as usize]; Some(MaxStackSize { count: value }) } } impl DefaultableComponent for Rarity { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::AnglerPotterySherd => Rarity::Uncommon, - Item::ArcherPotterySherd => Rarity::Uncommon, - Item::ArmsUpPotterySherd => Rarity::Uncommon, - Item::Barrier => Rarity::Epic, - Item::Beacon => Rarity::Rare, - Item::BladePotterySherd => Rarity::Uncommon, - Item::BoltArmorTrimSmithingTemplate => Rarity::Uncommon, - Item::BrewerPotterySherd => Rarity::Uncommon, - Item::BurnPotterySherd => Rarity::Uncommon, - Item::ChainCommandBlock => Rarity::Epic, - Item::ChainmailBoots => Rarity::Uncommon, - Item::ChainmailChestplate => Rarity::Uncommon, - Item::ChainmailHelmet => Rarity::Uncommon, - Item::ChainmailLeggings => Rarity::Uncommon, - Item::CoastArmorTrimSmithingTemplate => Rarity::Uncommon, - Item::CommandBlock => Rarity::Epic, - Item::CommandBlockMinecart => Rarity::Epic, - Item::Conduit => Rarity::Uncommon, - Item::CreeperBannerPattern => Rarity::Uncommon, - Item::CreeperHead => Rarity::Uncommon, - Item::DangerPotterySherd => Rarity::Uncommon, - Item::DebugStick => Rarity::Epic, - Item::DiscFragment5 => Rarity::Uncommon, - Item::DragonBreath => Rarity::Uncommon, - Item::DragonEgg => Rarity::Epic, - Item::DragonHead => Rarity::Epic, - Item::DuneArmorTrimSmithingTemplate => Rarity::Uncommon, - Item::EchoShard => Rarity::Uncommon, - Item::Elytra => Rarity::Epic, - Item::EnchantedBook => Rarity::Rare, - Item::EnchantedGoldenApple => Rarity::Rare, - Item::ExperienceBottle => Rarity::Uncommon, - Item::ExplorerPotterySherd => Rarity::Uncommon, - Item::EyeArmorTrimSmithingTemplate => Rarity::Rare, - Item::FlowArmorTrimSmithingTemplate => Rarity::Uncommon, - Item::FlowBannerPattern => Rarity::Rare, - Item::FlowPotterySherd => Rarity::Uncommon, - Item::FriendPotterySherd => Rarity::Uncommon, - Item::GoatHorn => Rarity::Uncommon, - Item::GusterBannerPattern => Rarity::Rare, - Item::GusterPotterySherd => Rarity::Uncommon, - Item::HeartOfTheSea => Rarity::Uncommon, - Item::HeartPotterySherd => Rarity::Uncommon, - Item::HeartbreakPotterySherd => Rarity::Uncommon, - Item::HeavyCore => Rarity::Epic, - Item::HostArmorTrimSmithingTemplate => Rarity::Uncommon, - Item::HowlPotterySherd => Rarity::Uncommon, - Item::Jigsaw => Rarity::Epic, - Item::KnowledgeBook => Rarity::Epic, - Item::Light => Rarity::Epic, - Item::Mace => Rarity::Epic, - Item::MinerPotterySherd => Rarity::Uncommon, - Item::MojangBannerPattern => Rarity::Rare, - Item::MournerPotterySherd => Rarity::Uncommon, - Item::MusicDisc11 => Rarity::Uncommon, - Item::MusicDisc13 => Rarity::Uncommon, - Item::MusicDisc5 => Rarity::Uncommon, - Item::MusicDiscBlocks => Rarity::Uncommon, - Item::MusicDiscCat => Rarity::Uncommon, - Item::MusicDiscChirp => Rarity::Uncommon, - Item::MusicDiscCreator => Rarity::Rare, - Item::MusicDiscCreatorMusicBox => Rarity::Uncommon, - Item::MusicDiscFar => Rarity::Uncommon, - Item::MusicDiscLavaChicken => Rarity::Rare, - Item::MusicDiscMall => Rarity::Uncommon, - Item::MusicDiscMellohi => Rarity::Uncommon, - Item::MusicDiscOtherside => Rarity::Rare, - Item::MusicDiscPigstep => Rarity::Rare, - Item::MusicDiscPrecipice => Rarity::Uncommon, - Item::MusicDiscRelic => Rarity::Uncommon, - Item::MusicDiscStal => Rarity::Uncommon, - Item::MusicDiscStrad => Rarity::Uncommon, - Item::MusicDiscTears => Rarity::Uncommon, - Item::MusicDiscWait => Rarity::Uncommon, - Item::MusicDiscWard => Rarity::Uncommon, - Item::NautilusShell => Rarity::Uncommon, - Item::NetherStar => Rarity::Rare, - Item::NetheriteUpgradeSmithingTemplate => Rarity::Uncommon, - Item::OminousBottle => Rarity::Uncommon, - Item::PiglinBannerPattern => Rarity::Uncommon, - Item::PiglinHead => Rarity::Uncommon, - Item::PlayerHead => Rarity::Uncommon, - Item::PlentyPotterySherd => Rarity::Uncommon, - Item::PrizePotterySherd => Rarity::Uncommon, - Item::RaiserArmorTrimSmithingTemplate => Rarity::Uncommon, - Item::RecoveryCompass => Rarity::Uncommon, - Item::RepeatingCommandBlock => Rarity::Epic, - Item::RibArmorTrimSmithingTemplate => Rarity::Uncommon, - Item::ScrapePotterySherd => Rarity::Uncommon, - Item::SentryArmorTrimSmithingTemplate => Rarity::Uncommon, - Item::ShaperArmorTrimSmithingTemplate => Rarity::Uncommon, - Item::SheafPotterySherd => Rarity::Uncommon, - Item::ShelterPotterySherd => Rarity::Uncommon, - Item::SilenceArmorTrimSmithingTemplate => Rarity::Epic, - Item::SkeletonSkull => Rarity::Uncommon, - Item::SkullBannerPattern => Rarity::Rare, - Item::SkullPotterySherd => Rarity::Uncommon, - Item::SnifferEgg => Rarity::Uncommon, - Item::SnortPotterySherd => Rarity::Uncommon, - Item::SnoutArmorTrimSmithingTemplate => Rarity::Uncommon, - Item::SpireArmorTrimSmithingTemplate => Rarity::Rare, - Item::StructureBlock => Rarity::Epic, - Item::StructureVoid => Rarity::Epic, - Item::TestBlock => Rarity::Epic, - Item::TestInstanceBlock => Rarity::Epic, - Item::TideArmorTrimSmithingTemplate => Rarity::Uncommon, - Item::TotemOfUndying => Rarity::Uncommon, - Item::Trident => Rarity::Rare, - Item::VexArmorTrimSmithingTemplate => Rarity::Rare, - Item::WardArmorTrimSmithingTemplate => Rarity::Rare, - Item::WayfinderArmorTrimSmithingTemplate => Rarity::Uncommon, - Item::WildArmorTrimSmithingTemplate => Rarity::Uncommon, - Item::WitherSkeletonSkull => Rarity::Rare, - Item::ZombieHead => Rarity::Uncommon, + ItemKind::AnglerPotterySherd => Rarity::Uncommon, + ItemKind::ArcherPotterySherd => Rarity::Uncommon, + ItemKind::ArmsUpPotterySherd => Rarity::Uncommon, + ItemKind::Barrier => Rarity::Epic, + ItemKind::Beacon => Rarity::Rare, + ItemKind::BladePotterySherd => Rarity::Uncommon, + ItemKind::BoltArmorTrimSmithingTemplate => Rarity::Uncommon, + ItemKind::BrewerPotterySherd => Rarity::Uncommon, + ItemKind::BurnPotterySherd => Rarity::Uncommon, + ItemKind::ChainCommandBlock => Rarity::Epic, + ItemKind::ChainmailBoots => Rarity::Uncommon, + ItemKind::ChainmailChestplate => Rarity::Uncommon, + ItemKind::ChainmailHelmet => Rarity::Uncommon, + ItemKind::ChainmailLeggings => Rarity::Uncommon, + ItemKind::CoastArmorTrimSmithingTemplate => Rarity::Uncommon, + ItemKind::CommandBlock => Rarity::Epic, + ItemKind::CommandBlockMinecart => Rarity::Epic, + ItemKind::Conduit => Rarity::Uncommon, + ItemKind::CreeperBannerPattern => Rarity::Uncommon, + ItemKind::CreeperHead => Rarity::Uncommon, + ItemKind::DangerPotterySherd => Rarity::Uncommon, + ItemKind::DebugStick => Rarity::Epic, + ItemKind::DiscFragment5 => Rarity::Uncommon, + ItemKind::DragonBreath => Rarity::Uncommon, + ItemKind::DragonEgg => Rarity::Epic, + ItemKind::DragonHead => Rarity::Epic, + ItemKind::DuneArmorTrimSmithingTemplate => Rarity::Uncommon, + ItemKind::EchoShard => Rarity::Uncommon, + ItemKind::Elytra => Rarity::Epic, + ItemKind::EnchantedBook => Rarity::Rare, + ItemKind::EnchantedGoldenApple => Rarity::Rare, + ItemKind::ExperienceBottle => Rarity::Uncommon, + ItemKind::ExplorerPotterySherd => Rarity::Uncommon, + ItemKind::EyeArmorTrimSmithingTemplate => Rarity::Rare, + ItemKind::FlowArmorTrimSmithingTemplate => Rarity::Uncommon, + ItemKind::FlowBannerPattern => Rarity::Rare, + ItemKind::FlowPotterySherd => Rarity::Uncommon, + ItemKind::FriendPotterySherd => Rarity::Uncommon, + ItemKind::GoatHorn => Rarity::Uncommon, + ItemKind::GusterBannerPattern => Rarity::Rare, + ItemKind::GusterPotterySherd => Rarity::Uncommon, + ItemKind::HeartOfTheSea => Rarity::Uncommon, + ItemKind::HeartPotterySherd => Rarity::Uncommon, + ItemKind::HeartbreakPotterySherd => Rarity::Uncommon, + ItemKind::HeavyCore => Rarity::Epic, + ItemKind::HostArmorTrimSmithingTemplate => Rarity::Uncommon, + ItemKind::HowlPotterySherd => Rarity::Uncommon, + ItemKind::Jigsaw => Rarity::Epic, + ItemKind::KnowledgeBook => Rarity::Epic, + ItemKind::Light => Rarity::Epic, + ItemKind::Mace => Rarity::Epic, + ItemKind::MinerPotterySherd => Rarity::Uncommon, + ItemKind::MojangBannerPattern => Rarity::Rare, + ItemKind::MournerPotterySherd => Rarity::Uncommon, + ItemKind::MusicDisc11 => Rarity::Uncommon, + ItemKind::MusicDisc13 => Rarity::Uncommon, + ItemKind::MusicDisc5 => Rarity::Uncommon, + ItemKind::MusicDiscBlocks => Rarity::Uncommon, + ItemKind::MusicDiscCat => Rarity::Uncommon, + ItemKind::MusicDiscChirp => Rarity::Uncommon, + ItemKind::MusicDiscCreator => Rarity::Rare, + ItemKind::MusicDiscCreatorMusicBox => Rarity::Uncommon, + ItemKind::MusicDiscFar => Rarity::Uncommon, + ItemKind::MusicDiscLavaChicken => Rarity::Rare, + ItemKind::MusicDiscMall => Rarity::Uncommon, + ItemKind::MusicDiscMellohi => Rarity::Uncommon, + ItemKind::MusicDiscOtherside => Rarity::Rare, + ItemKind::MusicDiscPigstep => Rarity::Rare, + ItemKind::MusicDiscPrecipice => Rarity::Uncommon, + ItemKind::MusicDiscRelic => Rarity::Uncommon, + ItemKind::MusicDiscStal => Rarity::Uncommon, + ItemKind::MusicDiscStrad => Rarity::Uncommon, + ItemKind::MusicDiscTears => Rarity::Uncommon, + ItemKind::MusicDiscWait => Rarity::Uncommon, + ItemKind::MusicDiscWard => Rarity::Uncommon, + ItemKind::NautilusShell => Rarity::Uncommon, + ItemKind::NetherStar => Rarity::Rare, + ItemKind::NetheriteUpgradeSmithingTemplate => Rarity::Uncommon, + ItemKind::OminousBottle => Rarity::Uncommon, + ItemKind::PiglinBannerPattern => Rarity::Uncommon, + ItemKind::PiglinHead => Rarity::Uncommon, + ItemKind::PlayerHead => Rarity::Uncommon, + ItemKind::PlentyPotterySherd => Rarity::Uncommon, + ItemKind::PrizePotterySherd => Rarity::Uncommon, + ItemKind::RaiserArmorTrimSmithingTemplate => Rarity::Uncommon, + ItemKind::RecoveryCompass => Rarity::Uncommon, + ItemKind::RepeatingCommandBlock => Rarity::Epic, + ItemKind::RibArmorTrimSmithingTemplate => Rarity::Uncommon, + ItemKind::ScrapePotterySherd => Rarity::Uncommon, + ItemKind::SentryArmorTrimSmithingTemplate => Rarity::Uncommon, + ItemKind::ShaperArmorTrimSmithingTemplate => Rarity::Uncommon, + ItemKind::SheafPotterySherd => Rarity::Uncommon, + ItemKind::ShelterPotterySherd => Rarity::Uncommon, + ItemKind::SilenceArmorTrimSmithingTemplate => Rarity::Epic, + ItemKind::SkeletonSkull => Rarity::Uncommon, + ItemKind::SkullBannerPattern => Rarity::Rare, + ItemKind::SkullPotterySherd => Rarity::Uncommon, + ItemKind::SnifferEgg => Rarity::Uncommon, + ItemKind::SnortPotterySherd => Rarity::Uncommon, + ItemKind::SnoutArmorTrimSmithingTemplate => Rarity::Uncommon, + ItemKind::SpireArmorTrimSmithingTemplate => Rarity::Rare, + ItemKind::StructureBlock => Rarity::Epic, + ItemKind::StructureVoid => Rarity::Epic, + ItemKind::TestBlock => Rarity::Epic, + ItemKind::TestInstanceBlock => Rarity::Epic, + ItemKind::TideArmorTrimSmithingTemplate => Rarity::Uncommon, + ItemKind::TotemOfUndying => Rarity::Uncommon, + ItemKind::Trident => Rarity::Rare, + ItemKind::VexArmorTrimSmithingTemplate => Rarity::Rare, + ItemKind::WardArmorTrimSmithingTemplate => Rarity::Rare, + ItemKind::WayfinderArmorTrimSmithingTemplate => Rarity::Uncommon, + ItemKind::WildArmorTrimSmithingTemplate => Rarity::Uncommon, + ItemKind::WitherSkeletonSkull => Rarity::Rare, + ItemKind::ZombieHead => Rarity::Uncommon, _ => Rarity::Common, }; Some(value) } } impl DefaultableComponent for RepairCost { - fn default_for_item(_item: Item) -> Option<Self> { + fn default_for_item(_item: ItemKind) -> Option<Self> { Some(RepairCost { cost: 0 }) } } impl DefaultableComponent for SwingAnimation { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::CopperSpear => SwingAnimation { + ItemKind::CopperSpear => SwingAnimation { kind: SwingAnimationKind::Stab, duration: 17, }, - Item::DiamondSpear => SwingAnimation { + ItemKind::DiamondSpear => SwingAnimation { kind: SwingAnimationKind::Stab, duration: 21, }, - Item::GoldenSpear => SwingAnimation { + ItemKind::GoldenSpear => SwingAnimation { kind: SwingAnimationKind::Stab, duration: 19, }, - Item::IronSpear => SwingAnimation { + ItemKind::IronSpear => SwingAnimation { kind: SwingAnimationKind::Stab, duration: 19, }, - Item::NetheriteSpear => SwingAnimation { + ItemKind::NetheriteSpear => SwingAnimation { kind: SwingAnimationKind::Stab, duration: 23, }, - Item::StoneSpear => SwingAnimation { + ItemKind::StoneSpear => SwingAnimation { kind: SwingAnimationKind::Stab, duration: 15, }, - Item::WoodenSpear => SwingAnimation { + ItemKind::WoodenSpear => SwingAnimation { kind: SwingAnimationKind::Stab, duration: 13, }, @@ -2249,44 +2253,44 @@ impl DefaultableComponent for SwingAnimation { } } impl DefaultableComponent for TooltipDisplay { - fn default_for_item(_item: Item) -> Option<Self> { + fn default_for_item(_item: ItemKind) -> Option<Self> { Some(TooltipDisplay::new()) } } impl DefaultableComponent for UseEffects { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::CopperSpear => UseEffects { + ItemKind::CopperSpear => UseEffects { can_sprint: true, interact_vibrations: false, speed_multiplier: 1.0, }, - Item::DiamondSpear => UseEffects { + ItemKind::DiamondSpear => UseEffects { can_sprint: true, interact_vibrations: false, speed_multiplier: 1.0, }, - Item::GoldenSpear => UseEffects { + ItemKind::GoldenSpear => UseEffects { can_sprint: true, interact_vibrations: false, speed_multiplier: 1.0, }, - Item::IronSpear => UseEffects { + ItemKind::IronSpear => UseEffects { can_sprint: true, interact_vibrations: false, speed_multiplier: 1.0, }, - Item::NetheriteSpear => UseEffects { + ItemKind::NetheriteSpear => UseEffects { can_sprint: true, interact_vibrations: false, speed_multiplier: 1.0, }, - Item::StoneSpear => UseEffects { + ItemKind::StoneSpear => UseEffects { can_sprint: true, interact_vibrations: false, speed_multiplier: 1.0, }, - Item::WoodenSpear => UseEffects { + ItemKind::WoodenSpear => UseEffects { can_sprint: true, interact_vibrations: false, speed_multiplier: 1.0, @@ -2297,147 +2301,147 @@ impl DefaultableComponent for UseEffects { } } impl DefaultableComponent for Container { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::AcaciaShelf => vec![], - Item::BambooShelf => vec![], - Item::Barrel => vec![], - Item::BirchShelf => vec![], - Item::BlackShulkerBox => vec![], - Item::BlastFurnace => vec![], - Item::BlueShulkerBox => vec![], - Item::BrewingStand => vec![], - Item::BrownShulkerBox => vec![], - Item::Campfire => vec![], - Item::CherryShelf => vec![], - Item::Chest => vec![], - Item::ChiseledBookshelf => vec![], - Item::Crafter => vec![], - Item::CrimsonShelf => vec![], - Item::CyanShulkerBox => vec![], - Item::DarkOakShelf => vec![], - Item::DecoratedPot => vec![], - Item::Dispenser => vec![], - Item::Dropper => vec![], - Item::Furnace => vec![], - Item::GrayShulkerBox => vec![], - Item::GreenShulkerBox => vec![], - Item::Hopper => vec![], - Item::JungleShelf => vec![], - Item::LightBlueShulkerBox => vec![], - Item::LightGrayShulkerBox => vec![], - Item::LimeShulkerBox => vec![], - Item::MagentaShulkerBox => vec![], - Item::MangroveShelf => vec![], - Item::OakShelf => vec![], - Item::OrangeShulkerBox => vec![], - Item::PaleOakShelf => vec![], - Item::PinkShulkerBox => vec![], - Item::PurpleShulkerBox => vec![], - Item::RedShulkerBox => vec![], - Item::ShulkerBox => vec![], - Item::Smoker => vec![], - Item::SoulCampfire => vec![], - Item::SpruceShelf => vec![], - Item::TrappedChest => vec![], - Item::WarpedShelf => vec![], - Item::WhiteShulkerBox => vec![], - Item::YellowShulkerBox => vec![], + ItemKind::AcaciaShelf => vec![], + ItemKind::BambooShelf => vec![], + ItemKind::Barrel => vec![], + ItemKind::BirchShelf => vec![], + ItemKind::BlackShulkerBox => vec![], + ItemKind::BlastFurnace => vec![], + ItemKind::BlueShulkerBox => vec![], + ItemKind::BrewingStand => vec![], + ItemKind::BrownShulkerBox => vec![], + ItemKind::Campfire => vec![], + ItemKind::CherryShelf => vec![], + ItemKind::Chest => vec![], + ItemKind::ChiseledBookshelf => vec![], + ItemKind::Crafter => vec![], + ItemKind::CrimsonShelf => vec![], + ItemKind::CyanShulkerBox => vec![], + ItemKind::DarkOakShelf => vec![], + ItemKind::DecoratedPot => vec![], + ItemKind::Dispenser => vec![], + ItemKind::Dropper => vec![], + ItemKind::Furnace => vec![], + ItemKind::GrayShulkerBox => vec![], + ItemKind::GreenShulkerBox => vec![], + ItemKind::Hopper => vec![], + ItemKind::JungleShelf => vec![], + ItemKind::LightBlueShulkerBox => vec![], + ItemKind::LightGrayShulkerBox => vec![], + ItemKind::LimeShulkerBox => vec![], + ItemKind::MagentaShulkerBox => vec![], + ItemKind::MangroveShelf => vec![], + ItemKind::OakShelf => vec![], + ItemKind::OrangeShulkerBox => vec![], + ItemKind::PaleOakShelf => vec![], + ItemKind::PinkShulkerBox => vec![], + ItemKind::PurpleShulkerBox => vec![], + ItemKind::RedShulkerBox => vec![], + ItemKind::ShulkerBox => vec![], + ItemKind::Smoker => vec![], + ItemKind::SoulCampfire => vec![], + ItemKind::SpruceShelf => vec![], + ItemKind::TrappedChest => vec![], + ItemKind::WarpedShelf => vec![], + ItemKind::WhiteShulkerBox => vec![], + ItemKind::YellowShulkerBox => vec![], _ => return None, }; Some(Container { items: value }) } } impl DefaultableComponent for EntityData { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::AllaySpawnEgg => EntityKind::Allay, - Item::ArmadilloSpawnEgg => EntityKind::Armadillo, - Item::AxolotlSpawnEgg => EntityKind::Axolotl, - Item::BatSpawnEgg => EntityKind::Bat, - Item::BeeSpawnEgg => EntityKind::Bee, - Item::BlazeSpawnEgg => EntityKind::Blaze, - Item::BoggedSpawnEgg => EntityKind::Bogged, - Item::BreezeSpawnEgg => EntityKind::Breeze, - Item::CamelHuskSpawnEgg => EntityKind::CamelHusk, - Item::CamelSpawnEgg => EntityKind::Camel, - Item::CatSpawnEgg => EntityKind::Cat, - Item::CaveSpiderSpawnEgg => EntityKind::CaveSpider, - Item::ChickenSpawnEgg => EntityKind::Chicken, - Item::CodSpawnEgg => EntityKind::Cod, - Item::CopperGolemSpawnEgg => EntityKind::CopperGolem, - Item::CowSpawnEgg => EntityKind::Cow, - Item::CreakingSpawnEgg => EntityKind::Creaking, - Item::CreeperSpawnEgg => EntityKind::Creeper, - Item::DolphinSpawnEgg => EntityKind::Dolphin, - Item::DonkeySpawnEgg => EntityKind::Donkey, - Item::DrownedSpawnEgg => EntityKind::Drowned, - Item::ElderGuardianSpawnEgg => EntityKind::ElderGuardian, - Item::EnderDragonSpawnEgg => EntityKind::EnderDragon, - Item::EndermanSpawnEgg => EntityKind::Enderman, - Item::EndermiteSpawnEgg => EntityKind::Endermite, - Item::EvokerSpawnEgg => EntityKind::Evoker, - Item::FoxSpawnEgg => EntityKind::Fox, - Item::FrogSpawnEgg => EntityKind::Frog, - Item::GhastSpawnEgg => EntityKind::Ghast, - Item::GlowSquidSpawnEgg => EntityKind::GlowSquid, - Item::GoatSpawnEgg => EntityKind::Goat, - Item::GuardianSpawnEgg => EntityKind::Guardian, - Item::HappyGhastSpawnEgg => EntityKind::HappyGhast, - Item::HoglinSpawnEgg => EntityKind::Hoglin, - Item::HorseSpawnEgg => EntityKind::Horse, - Item::HuskSpawnEgg => EntityKind::Husk, - Item::IronGolemSpawnEgg => EntityKind::IronGolem, - Item::LlamaSpawnEgg => EntityKind::Llama, - Item::MagmaCubeSpawnEgg => EntityKind::MagmaCube, - Item::MooshroomSpawnEgg => EntityKind::Mooshroom, - Item::MuleSpawnEgg => EntityKind::Mule, - Item::NautilusSpawnEgg => EntityKind::Nautilus, - Item::OcelotSpawnEgg => EntityKind::Ocelot, - Item::PandaSpawnEgg => EntityKind::Panda, - Item::ParchedSpawnEgg => EntityKind::Parched, - Item::ParrotSpawnEgg => EntityKind::Parrot, - Item::PhantomSpawnEgg => EntityKind::Phantom, - Item::PigSpawnEgg => EntityKind::Pig, - Item::PiglinBruteSpawnEgg => EntityKind::PiglinBrute, - Item::PiglinSpawnEgg => EntityKind::Piglin, - Item::PillagerSpawnEgg => EntityKind::Pillager, - Item::PolarBearSpawnEgg => EntityKind::PolarBear, - Item::PufferfishSpawnEgg => EntityKind::Pufferfish, - Item::RabbitSpawnEgg => EntityKind::Rabbit, - Item::RavagerSpawnEgg => EntityKind::Ravager, - Item::SalmonSpawnEgg => EntityKind::Salmon, - Item::SheepSpawnEgg => EntityKind::Sheep, - Item::ShulkerSpawnEgg => EntityKind::Shulker, - Item::SilverfishSpawnEgg => EntityKind::Silverfish, - Item::SkeletonHorseSpawnEgg => EntityKind::SkeletonHorse, - Item::SkeletonSpawnEgg => EntityKind::Skeleton, - Item::SlimeSpawnEgg => EntityKind::Slime, - Item::SnifferSpawnEgg => EntityKind::Sniffer, - Item::SnowGolemSpawnEgg => EntityKind::SnowGolem, - Item::SpiderSpawnEgg => EntityKind::Spider, - Item::SquidSpawnEgg => EntityKind::Squid, - Item::StraySpawnEgg => EntityKind::Stray, - Item::StriderSpawnEgg => EntityKind::Strider, - Item::TadpoleSpawnEgg => EntityKind::Tadpole, - Item::TraderLlamaSpawnEgg => EntityKind::TraderLlama, - Item::TropicalFishSpawnEgg => EntityKind::TropicalFish, - Item::TurtleSpawnEgg => EntityKind::Turtle, - Item::VexSpawnEgg => EntityKind::Vex, - Item::VillagerSpawnEgg => EntityKind::Villager, - Item::VindicatorSpawnEgg => EntityKind::Vindicator, - Item::WanderingTraderSpawnEgg => EntityKind::WanderingTrader, - Item::WardenSpawnEgg => EntityKind::Warden, - Item::WitchSpawnEgg => EntityKind::Witch, - Item::WitherSkeletonSpawnEgg => EntityKind::WitherSkeleton, - Item::WitherSpawnEgg => EntityKind::Wither, - Item::WolfSpawnEgg => EntityKind::Wolf, - Item::ZoglinSpawnEgg => EntityKind::Zoglin, - Item::ZombieHorseSpawnEgg => EntityKind::ZombieHorse, - Item::ZombieNautilusSpawnEgg => EntityKind::ZombieNautilus, - Item::ZombieSpawnEgg => EntityKind::Zombie, - Item::ZombieVillagerSpawnEgg => EntityKind::ZombieVillager, - Item::ZombifiedPiglinSpawnEgg => EntityKind::ZombifiedPiglin, + ItemKind::AllaySpawnEgg => EntityKind::Allay, + ItemKind::ArmadilloSpawnEgg => EntityKind::Armadillo, + ItemKind::AxolotlSpawnEgg => EntityKind::Axolotl, + ItemKind::BatSpawnEgg => EntityKind::Bat, + ItemKind::BeeSpawnEgg => EntityKind::Bee, + ItemKind::BlazeSpawnEgg => EntityKind::Blaze, + ItemKind::BoggedSpawnEgg => EntityKind::Bogged, + ItemKind::BreezeSpawnEgg => EntityKind::Breeze, + ItemKind::CamelHuskSpawnEgg => EntityKind::CamelHusk, + ItemKind::CamelSpawnEgg => EntityKind::Camel, + ItemKind::CatSpawnEgg => EntityKind::Cat, + ItemKind::CaveSpiderSpawnEgg => EntityKind::CaveSpider, + ItemKind::ChickenSpawnEgg => EntityKind::Chicken, + ItemKind::CodSpawnEgg => EntityKind::Cod, + ItemKind::CopperGolemSpawnEgg => EntityKind::CopperGolem, + ItemKind::CowSpawnEgg => EntityKind::Cow, + ItemKind::CreakingSpawnEgg => EntityKind::Creaking, + ItemKind::CreeperSpawnEgg => EntityKind::Creeper, + ItemKind::DolphinSpawnEgg => EntityKind::Dolphin, + ItemKind::DonkeySpawnEgg => EntityKind::Donkey, + ItemKind::DrownedSpawnEgg => EntityKind::Drowned, + ItemKind::ElderGuardianSpawnEgg => EntityKind::ElderGuardian, + ItemKind::EnderDragonSpawnEgg => EntityKind::EnderDragon, + ItemKind::EndermanSpawnEgg => EntityKind::Enderman, + ItemKind::EndermiteSpawnEgg => EntityKind::Endermite, + ItemKind::EvokerSpawnEgg => EntityKind::Evoker, + ItemKind::FoxSpawnEgg => EntityKind::Fox, + ItemKind::FrogSpawnEgg => EntityKind::Frog, + ItemKind::GhastSpawnEgg => EntityKind::Ghast, + ItemKind::GlowSquidSpawnEgg => EntityKind::GlowSquid, + ItemKind::GoatSpawnEgg => EntityKind::Goat, + ItemKind::GuardianSpawnEgg => EntityKind::Guardian, + ItemKind::HappyGhastSpawnEgg => EntityKind::HappyGhast, + ItemKind::HoglinSpawnEgg => EntityKind::Hoglin, + ItemKind::HorseSpawnEgg => EntityKind::Horse, + ItemKind::HuskSpawnEgg => EntityKind::Husk, + ItemKind::IronGolemSpawnEgg => EntityKind::IronGolem, + ItemKind::LlamaSpawnEgg => EntityKind::Llama, + ItemKind::MagmaCubeSpawnEgg => EntityKind::MagmaCube, + ItemKind::MooshroomSpawnEgg => EntityKind::Mooshroom, + ItemKind::MuleSpawnEgg => EntityKind::Mule, + ItemKind::NautilusSpawnEgg => EntityKind::Nautilus, + ItemKind::OcelotSpawnEgg => EntityKind::Ocelot, + ItemKind::PandaSpawnEgg => EntityKind::Panda, + ItemKind::ParchedSpawnEgg => EntityKind::Parched, + ItemKind::ParrotSpawnEgg => EntityKind::Parrot, + ItemKind::PhantomSpawnEgg => EntityKind::Phantom, + ItemKind::PigSpawnEgg => EntityKind::Pig, + ItemKind::PiglinBruteSpawnEgg => EntityKind::PiglinBrute, + ItemKind::PiglinSpawnEgg => EntityKind::Piglin, + ItemKind::PillagerSpawnEgg => EntityKind::Pillager, + ItemKind::PolarBearSpawnEgg => EntityKind::PolarBear, + ItemKind::PufferfishSpawnEgg => EntityKind::Pufferfish, + ItemKind::RabbitSpawnEgg => EntityKind::Rabbit, + ItemKind::RavagerSpawnEgg => EntityKind::Ravager, + ItemKind::SalmonSpawnEgg => EntityKind::Salmon, + ItemKind::SheepSpawnEgg => EntityKind::Sheep, + ItemKind::ShulkerSpawnEgg => EntityKind::Shulker, + ItemKind::SilverfishSpawnEgg => EntityKind::Silverfish, + ItemKind::SkeletonHorseSpawnEgg => EntityKind::SkeletonHorse, + ItemKind::SkeletonSpawnEgg => EntityKind::Skeleton, + ItemKind::SlimeSpawnEgg => EntityKind::Slime, + ItemKind::SnifferSpawnEgg => EntityKind::Sniffer, + ItemKind::SnowGolemSpawnEgg => EntityKind::SnowGolem, + ItemKind::SpiderSpawnEgg => EntityKind::Spider, + ItemKind::SquidSpawnEgg => EntityKind::Squid, + ItemKind::StraySpawnEgg => EntityKind::Stray, + ItemKind::StriderSpawnEgg => EntityKind::Strider, + ItemKind::TadpoleSpawnEgg => EntityKind::Tadpole, + ItemKind::TraderLlamaSpawnEgg => EntityKind::TraderLlama, + ItemKind::TropicalFishSpawnEgg => EntityKind::TropicalFish, + ItemKind::TurtleSpawnEgg => EntityKind::Turtle, + ItemKind::VexSpawnEgg => EntityKind::Vex, + ItemKind::VillagerSpawnEgg => EntityKind::Villager, + ItemKind::VindicatorSpawnEgg => EntityKind::Vindicator, + ItemKind::WanderingTraderSpawnEgg => EntityKind::WanderingTrader, + ItemKind::WardenSpawnEgg => EntityKind::Warden, + ItemKind::WitchSpawnEgg => EntityKind::Witch, + ItemKind::WitherSkeletonSpawnEgg => EntityKind::WitherSkeleton, + ItemKind::WitherSpawnEgg => EntityKind::Wither, + ItemKind::WolfSpawnEgg => EntityKind::Wolf, + ItemKind::ZoglinSpawnEgg => EntityKind::Zoglin, + ItemKind::ZombieHorseSpawnEgg => EntityKind::ZombieHorse, + ItemKind::ZombieNautilusSpawnEgg => EntityKind::ZombieNautilus, + ItemKind::ZombieSpawnEgg => EntityKind::Zombie, + ItemKind::ZombieVillagerSpawnEgg => EntityKind::ZombieVillager, + ItemKind::ZombifiedPiglinSpawnEgg => EntityKind::ZombifiedPiglin, _ => return None, }; Some(EntityData { @@ -2447,60 +2451,64 @@ impl DefaultableComponent for EntityData { } } impl DefaultableComponent for ProvidesTrimMaterial { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::AmethystShard => ProvidesTrimMaterial::Referenced("minecraft:amethyst".into()), - Item::CopperIngot => ProvidesTrimMaterial::Referenced("minecraft:copper".into()), - Item::Diamond => ProvidesTrimMaterial::Referenced("minecraft:diamond".into()), - Item::Emerald => ProvidesTrimMaterial::Referenced("minecraft:emerald".into()), - Item::GoldIngot => ProvidesTrimMaterial::Referenced("minecraft:gold".into()), - Item::IronIngot => ProvidesTrimMaterial::Referenced("minecraft:iron".into()), - Item::LapisLazuli => ProvidesTrimMaterial::Referenced("minecraft:lapis".into()), - Item::NetheriteIngot => ProvidesTrimMaterial::Referenced("minecraft:netherite".into()), - Item::Quartz => ProvidesTrimMaterial::Referenced("minecraft:quartz".into()), - Item::Redstone => ProvidesTrimMaterial::Referenced("minecraft:redstone".into()), - Item::ResinBrick => ProvidesTrimMaterial::Referenced("minecraft:resin".into()), + ItemKind::AmethystShard => { + ProvidesTrimMaterial::Referenced("minecraft:amethyst".into()) + } + ItemKind::CopperIngot => ProvidesTrimMaterial::Referenced("minecraft:copper".into()), + ItemKind::Diamond => ProvidesTrimMaterial::Referenced("minecraft:diamond".into()), + ItemKind::Emerald => ProvidesTrimMaterial::Referenced("minecraft:emerald".into()), + ItemKind::GoldIngot => ProvidesTrimMaterial::Referenced("minecraft:gold".into()), + ItemKind::IronIngot => ProvidesTrimMaterial::Referenced("minecraft:iron".into()), + ItemKind::LapisLazuli => ProvidesTrimMaterial::Referenced("minecraft:lapis".into()), + ItemKind::NetheriteIngot => { + ProvidesTrimMaterial::Referenced("minecraft:netherite".into()) + } + ItemKind::Quartz => ProvidesTrimMaterial::Referenced("minecraft:quartz".into()), + ItemKind::Redstone => ProvidesTrimMaterial::Referenced("minecraft:redstone".into()), + ItemKind::ResinBrick => ProvidesTrimMaterial::Referenced("minecraft:resin".into()), _ => return None, }; Some(value) } } impl DefaultableComponent for DamageResistant { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::AncientDebris => "#minecraft:is_fire".into(), - Item::NetherStar => "#minecraft:is_explosion".into(), - Item::NetheriteAxe => "#minecraft:is_fire".into(), - Item::NetheriteBlock => "#minecraft:is_fire".into(), - Item::NetheriteBoots => "#minecraft:is_fire".into(), - Item::NetheriteChestplate => "#minecraft:is_fire".into(), - Item::NetheriteHelmet => "#minecraft:is_fire".into(), - Item::NetheriteHoe => "#minecraft:is_fire".into(), - Item::NetheriteHorseArmor => "#minecraft:is_fire".into(), - Item::NetheriteIngot => "#minecraft:is_fire".into(), - Item::NetheriteLeggings => "#minecraft:is_fire".into(), - Item::NetheriteNautilusArmor => "#minecraft:is_fire".into(), - Item::NetheritePickaxe => "#minecraft:is_fire".into(), - Item::NetheriteScrap => "#minecraft:is_fire".into(), - Item::NetheriteShovel => "#minecraft:is_fire".into(), - Item::NetheriteSpear => "#minecraft:is_fire".into(), - Item::NetheriteSword => "#minecraft:is_fire".into(), + ItemKind::AncientDebris => "#minecraft:is_fire".into(), + ItemKind::NetherStar => "#minecraft:is_explosion".into(), + ItemKind::NetheriteAxe => "#minecraft:is_fire".into(), + ItemKind::NetheriteBlock => "#minecraft:is_fire".into(), + ItemKind::NetheriteBoots => "#minecraft:is_fire".into(), + ItemKind::NetheriteChestplate => "#minecraft:is_fire".into(), + ItemKind::NetheriteHelmet => "#minecraft:is_fire".into(), + ItemKind::NetheriteHoe => "#minecraft:is_fire".into(), + ItemKind::NetheriteHorseArmor => "#minecraft:is_fire".into(), + ItemKind::NetheriteIngot => "#minecraft:is_fire".into(), + ItemKind::NetheriteLeggings => "#minecraft:is_fire".into(), + ItemKind::NetheriteNautilusArmor => "#minecraft:is_fire".into(), + ItemKind::NetheritePickaxe => "#minecraft:is_fire".into(), + ItemKind::NetheriteScrap => "#minecraft:is_fire".into(), + ItemKind::NetheriteShovel => "#minecraft:is_fire".into(), + ItemKind::NetheriteSpear => "#minecraft:is_fire".into(), + ItemKind::NetheriteSword => "#minecraft:is_fire".into(), _ => return None, }; Some(DamageResistant { types: value }) } } impl DefaultableComponent for Consumable { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::Apple => Consumable::new(), - Item::BakedPotato => Consumable::new(), - Item::Beef => Consumable::new(), - Item::Beetroot => Consumable::new(), - Item::BeetrootSoup => Consumable::new(), - Item::Bread => Consumable::new(), - Item::Carrot => Consumable::new(), - Item::Chicken => Consumable { + ItemKind::Apple => Consumable::new(), + ItemKind::BakedPotato => Consumable::new(), + ItemKind::Beef => Consumable::new(), + ItemKind::Beetroot => Consumable::new(), + ItemKind::BeetrootSoup => Consumable::new(), + ItemKind::Bread => Consumable::new(), + ItemKind::Carrot => Consumable::new(), + ItemKind::Chicken => Consumable { on_consume_effects: vec![ConsumeEffect::ApplyEffects { effects: vec![MobEffectInstance { id: MobEffect::Hunger, @@ -2514,24 +2522,24 @@ impl DefaultableComponent for Consumable { }], ..Consumable::new() }, - Item::ChorusFruit => Consumable { + ItemKind::ChorusFruit => Consumable { on_consume_effects: vec![ConsumeEffect::TeleportRandomly { diameter: 16.0 }], ..Consumable::new() }, - Item::Cod => Consumable::new(), - Item::CookedBeef => Consumable::new(), - Item::CookedChicken => Consumable::new(), - Item::CookedCod => Consumable::new(), - Item::CookedMutton => Consumable::new(), - Item::CookedPorkchop => Consumable::new(), - Item::CookedRabbit => Consumable::new(), - Item::CookedSalmon => Consumable::new(), - Item::Cookie => Consumable::new(), - Item::DriedKelp => Consumable { + ItemKind::Cod => Consumable::new(), + ItemKind::CookedBeef => Consumable::new(), + ItemKind::CookedChicken => Consumable::new(), + ItemKind::CookedCod => Consumable::new(), + ItemKind::CookedMutton => Consumable::new(), + ItemKind::CookedPorkchop => Consumable::new(), + ItemKind::CookedRabbit => Consumable::new(), + ItemKind::CookedSalmon => Consumable::new(), + ItemKind::Cookie => Consumable::new(), + ItemKind::DriedKelp => Consumable { consume_seconds: 0.8, ..Consumable::new() }, - Item::EnchantedGoldenApple => Consumable { + ItemKind::EnchantedGoldenApple => Consumable { on_consume_effects: vec![ConsumeEffect::ApplyEffects { effects: vec![ MobEffectInstance { @@ -2573,8 +2581,8 @@ impl DefaultableComponent for Consumable { }], ..Consumable::new() }, - Item::GlowBerries => Consumable::new(), - Item::GoldenApple => Consumable { + ItemKind::GlowBerries => Consumable::new(), + ItemKind::GoldenApple => Consumable { on_consume_effects: vec![ConsumeEffect::ApplyEffects { effects: vec![ MobEffectInstance { @@ -2599,8 +2607,8 @@ impl DefaultableComponent for Consumable { }], ..Consumable::new() }, - Item::GoldenCarrot => Consumable::new(), - Item::HoneyBottle => Consumable { + ItemKind::GoldenCarrot => Consumable::new(), + ItemKind::HoneyBottle => Consumable { animation: ItemUseAnimation::Drink, consume_seconds: 2.0, has_consume_particles: false, @@ -2611,17 +2619,17 @@ impl DefaultableComponent for Consumable { }], sound: azalea_registry::Holder::Reference(SoundEvent::ItemHoneyBottleDrink), }, - Item::MelonSlice => Consumable::new(), - Item::MilkBucket => Consumable { + ItemKind::MelonSlice => Consumable::new(), + ItemKind::MilkBucket => Consumable { animation: ItemUseAnimation::Drink, has_consume_particles: false, on_consume_effects: vec![ConsumeEffect::ClearAllEffects {}], sound: azalea_registry::Holder::Reference(SoundEvent::EntityGenericDrink), ..Consumable::new() }, - Item::MushroomStew => Consumable::new(), - Item::Mutton => Consumable::new(), - Item::OminousBottle => Consumable { + ItemKind::MushroomStew => Consumable::new(), + ItemKind::Mutton => Consumable::new(), + ItemKind::OminousBottle => Consumable { animation: ItemUseAnimation::Drink, has_consume_particles: false, on_consume_effects: vec![ConsumeEffect::PlaySound { @@ -2630,7 +2638,7 @@ impl DefaultableComponent for Consumable { sound: azalea_registry::Holder::Reference(SoundEvent::EntityGenericDrink), ..Consumable::new() }, - Item::PoisonousPotato => Consumable { + ItemKind::PoisonousPotato => Consumable { on_consume_effects: vec![ConsumeEffect::ApplyEffects { effects: vec![MobEffectInstance { id: MobEffect::Poison, @@ -2644,15 +2652,15 @@ impl DefaultableComponent for Consumable { }], ..Consumable::new() }, - Item::Porkchop => Consumable::new(), - Item::Potato => Consumable::new(), - Item::Potion => Consumable { + ItemKind::Porkchop => Consumable::new(), + ItemKind::Potato => Consumable::new(), + ItemKind::Potion => Consumable { animation: ItemUseAnimation::Drink, has_consume_particles: false, sound: azalea_registry::Holder::Reference(SoundEvent::EntityGenericDrink), ..Consumable::new() }, - Item::Pufferfish => Consumable { + ItemKind::Pufferfish => Consumable { on_consume_effects: vec![ConsumeEffect::ApplyEffects { effects: vec![ MobEffectInstance { @@ -2686,10 +2694,10 @@ impl DefaultableComponent for Consumable { }], ..Consumable::new() }, - Item::PumpkinPie => Consumable::new(), - Item::Rabbit => Consumable::new(), - Item::RabbitStew => Consumable::new(), - Item::RottenFlesh => Consumable { + ItemKind::PumpkinPie => Consumable::new(), + ItemKind::Rabbit => Consumable::new(), + ItemKind::RabbitStew => Consumable::new(), + ItemKind::RottenFlesh => Consumable { on_consume_effects: vec![ConsumeEffect::ApplyEffects { effects: vec![MobEffectInstance { id: MobEffect::Hunger, @@ -2703,8 +2711,8 @@ impl DefaultableComponent for Consumable { }], ..Consumable::new() }, - Item::Salmon => Consumable::new(), - Item::SpiderEye => Consumable { + ItemKind::Salmon => Consumable::new(), + ItemKind::SpiderEye => Consumable { on_consume_effects: vec![ConsumeEffect::ApplyEffects { effects: vec![MobEffectInstance { id: MobEffect::Poison, @@ -2718,233 +2726,233 @@ impl DefaultableComponent for Consumable { }], ..Consumable::new() }, - Item::SuspiciousStew => Consumable::new(), - Item::SweetBerries => Consumable::new(), - Item::TropicalFish => Consumable::new(), + ItemKind::SuspiciousStew => Consumable::new(), + ItemKind::SweetBerries => Consumable::new(), + ItemKind::TropicalFish => Consumable::new(), _ => return None, }; Some(value) } } impl DefaultableComponent for Food { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::Apple => Food { + ItemKind::Apple => Food { nutrition: 4, saturation: 2.4, ..Food::new() }, - Item::BakedPotato => Food { + ItemKind::BakedPotato => Food { nutrition: 5, saturation: 6.0, ..Food::new() }, - Item::Beef => Food { + ItemKind::Beef => Food { nutrition: 3, saturation: 1.8000001, ..Food::new() }, - Item::Beetroot => Food { + ItemKind::Beetroot => Food { nutrition: 1, saturation: 1.2, ..Food::new() }, - Item::BeetrootSoup => Food { + ItemKind::BeetrootSoup => Food { nutrition: 6, saturation: 7.2000003, ..Food::new() }, - Item::Bread => Food { + ItemKind::Bread => Food { nutrition: 5, saturation: 6.0, ..Food::new() }, - Item::Carrot => Food { + ItemKind::Carrot => Food { nutrition: 3, saturation: 3.6000001, ..Food::new() }, - Item::Chicken => Food { + ItemKind::Chicken => Food { nutrition: 2, saturation: 1.2, ..Food::new() }, - Item::ChorusFruit => Food { + ItemKind::ChorusFruit => Food { can_always_eat: true, nutrition: 4, saturation: 2.4, }, - Item::Cod => Food { + ItemKind::Cod => Food { nutrition: 2, saturation: 0.4, ..Food::new() }, - Item::CodBucket => Food { + ItemKind::CodBucket => Food { nutrition: 2, saturation: 0.4, ..Food::new() }, - Item::CookedBeef => Food { + ItemKind::CookedBeef => Food { nutrition: 8, saturation: 12.8, ..Food::new() }, - Item::CookedChicken => Food { + ItemKind::CookedChicken => Food { nutrition: 6, saturation: 7.2000003, ..Food::new() }, - Item::CookedCod => Food { + ItemKind::CookedCod => Food { nutrition: 5, saturation: 6.0, ..Food::new() }, - Item::CookedMutton => Food { + ItemKind::CookedMutton => Food { nutrition: 6, saturation: 9.6, ..Food::new() }, - Item::CookedPorkchop => Food { + ItemKind::CookedPorkchop => Food { nutrition: 8, saturation: 12.8, ..Food::new() }, - Item::CookedRabbit => Food { + ItemKind::CookedRabbit => Food { nutrition: 5, saturation: 6.0, ..Food::new() }, - Item::CookedSalmon => Food { + ItemKind::CookedSalmon => Food { nutrition: 6, saturation: 9.6, ..Food::new() }, - Item::Cookie => Food { + ItemKind::Cookie => Food { nutrition: 2, saturation: 0.4, ..Food::new() }, - Item::DriedKelp => Food { + ItemKind::DriedKelp => Food { nutrition: 1, saturation: 0.6, ..Food::new() }, - Item::EnchantedGoldenApple => Food { + ItemKind::EnchantedGoldenApple => Food { can_always_eat: true, nutrition: 4, saturation: 9.6, }, - Item::GlowBerries => Food { + ItemKind::GlowBerries => Food { nutrition: 2, saturation: 0.4, ..Food::new() }, - Item::GoldenApple => Food { + ItemKind::GoldenApple => Food { can_always_eat: true, nutrition: 4, saturation: 9.6, }, - Item::GoldenCarrot => Food { + ItemKind::GoldenCarrot => Food { nutrition: 6, saturation: 14.400001, ..Food::new() }, - Item::HoneyBottle => Food { + ItemKind::HoneyBottle => Food { can_always_eat: true, nutrition: 6, saturation: 1.2, }, - Item::MelonSlice => Food { + ItemKind::MelonSlice => Food { nutrition: 2, saturation: 1.2, ..Food::new() }, - Item::MushroomStew => Food { + ItemKind::MushroomStew => Food { nutrition: 6, saturation: 7.2000003, ..Food::new() }, - Item::Mutton => Food { + ItemKind::Mutton => Food { nutrition: 2, saturation: 1.2, ..Food::new() }, - Item::PoisonousPotato => Food { + ItemKind::PoisonousPotato => Food { nutrition: 2, saturation: 1.2, ..Food::new() }, - Item::Porkchop => Food { + ItemKind::Porkchop => Food { nutrition: 3, saturation: 1.8000001, ..Food::new() }, - Item::Potato => Food { + ItemKind::Potato => Food { nutrition: 1, saturation: 0.6, ..Food::new() }, - Item::Pufferfish => Food { + ItemKind::Pufferfish => Food { nutrition: 1, saturation: 0.2, ..Food::new() }, - Item::PufferfishBucket => Food { + ItemKind::PufferfishBucket => Food { nutrition: 1, saturation: 0.2, ..Food::new() }, - Item::PumpkinPie => Food { + ItemKind::PumpkinPie => Food { nutrition: 8, saturation: 4.8, ..Food::new() }, - Item::Rabbit => Food { + ItemKind::Rabbit => Food { nutrition: 3, saturation: 1.8000001, ..Food::new() }, - Item::RabbitStew => Food { + ItemKind::RabbitStew => Food { nutrition: 10, saturation: 12.0, ..Food::new() }, - Item::RottenFlesh => Food { + ItemKind::RottenFlesh => Food { nutrition: 4, saturation: 0.8, ..Food::new() }, - Item::Salmon => Food { + ItemKind::Salmon => Food { nutrition: 2, saturation: 0.4, ..Food::new() }, - Item::SalmonBucket => Food { + ItemKind::SalmonBucket => Food { nutrition: 2, saturation: 0.4, ..Food::new() }, - Item::SpiderEye => Food { + ItemKind::SpiderEye => Food { nutrition: 2, saturation: 3.2, ..Food::new() }, - Item::SuspiciousStew => Food { + ItemKind::SuspiciousStew => Food { can_always_eat: true, nutrition: 6, saturation: 7.2000003, }, - Item::SweetBerries => Food { + ItemKind::SweetBerries => Food { nutrition: 2, saturation: 0.4, ..Food::new() }, - Item::TropicalFish => Food { + ItemKind::TropicalFish => Food { nutrition: 1, saturation: 0.2, ..Food::new() }, - Item::TropicalFishBucket => Food { + ItemKind::TropicalFishBucket => Food { nutrition: 1, saturation: 0.2, ..Food::new() @@ -2955,58 +2963,58 @@ impl DefaultableComponent for Food { } } impl DefaultableComponent for BucketEntityData { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::AxolotlBucket => NbtCompound::from_values(vec![]), - Item::CodBucket => NbtCompound::from_values(vec![]), - Item::PufferfishBucket => NbtCompound::from_values(vec![]), - Item::SalmonBucket => NbtCompound::from_values(vec![]), - Item::TadpoleBucket => NbtCompound::from_values(vec![]), - Item::TropicalFishBucket => NbtCompound::from_values(vec![]), + ItemKind::AxolotlBucket => NbtCompound::from_values(vec![]), + ItemKind::CodBucket => NbtCompound::from_values(vec![]), + ItemKind::PufferfishBucket => NbtCompound::from_values(vec![]), + ItemKind::SalmonBucket => NbtCompound::from_values(vec![]), + ItemKind::TadpoleBucket => NbtCompound::from_values(vec![]), + ItemKind::TropicalFishBucket => NbtCompound::from_values(vec![]), _ => return None, }; Some(BucketEntityData { entity: value }) } } impl DefaultableComponent for Bees { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::BeeNest => vec![], - Item::Beehive => vec![], + ItemKind::BeeNest => vec![], + ItemKind::Beehive => vec![], _ => return None, }; Some(Bees { occupants: value }) } } impl DefaultableComponent for BlockState { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::BeeNest => HashMap::from_iter([("honey_level".to_string(), "0".to_string())]), - Item::Beehive => HashMap::from_iter([("honey_level".to_string(), "0".to_string())]), - Item::CopperGolemStatue => { + ItemKind::BeeNest => HashMap::from_iter([("honey_level".to_string(), "0".to_string())]), + ItemKind::Beehive => HashMap::from_iter([("honey_level".to_string(), "0".to_string())]), + ItemKind::CopperGolemStatue => { HashMap::from_iter([("copper_golem_pose".to_string(), "standing".to_string())]) } - Item::ExposedCopperGolemStatue => { + ItemKind::ExposedCopperGolemStatue => { HashMap::from_iter([("copper_golem_pose".to_string(), "standing".to_string())]) } - Item::Light => HashMap::from_iter([("level".to_string(), "15".to_string())]), - Item::OxidizedCopperGolemStatue => { + ItemKind::Light => HashMap::from_iter([("level".to_string(), "15".to_string())]), + ItemKind::OxidizedCopperGolemStatue => { HashMap::from_iter([("copper_golem_pose".to_string(), "standing".to_string())]) } - Item::TestBlock => HashMap::from_iter([("mode".to_string(), "start".to_string())]), - Item::WaxedCopperGolemStatue => { + ItemKind::TestBlock => HashMap::from_iter([("mode".to_string(), "start".to_string())]), + ItemKind::WaxedCopperGolemStatue => { HashMap::from_iter([("copper_golem_pose".to_string(), "standing".to_string())]) } - Item::WaxedExposedCopperGolemStatue => { + ItemKind::WaxedExposedCopperGolemStatue => { HashMap::from_iter([("copper_golem_pose".to_string(), "standing".to_string())]) } - Item::WaxedOxidizedCopperGolemStatue => { + ItemKind::WaxedOxidizedCopperGolemStatue => { HashMap::from_iter([("copper_golem_pose".to_string(), "standing".to_string())]) } - Item::WaxedWeatheredCopperGolemStatue => { + ItemKind::WaxedWeatheredCopperGolemStatue => { HashMap::from_iter([("copper_golem_pose".to_string(), "standing".to_string())]) } - Item::WeatheredCopperGolemStatue => { + ItemKind::WeatheredCopperGolemStatue => { HashMap::from_iter([("copper_golem_pose".to_string(), "standing".to_string())]) } _ => return None, @@ -3015,15 +3023,15 @@ impl DefaultableComponent for BlockState { } } impl DefaultableComponent for UseRemainder { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::BeetrootSoup => ItemStack::from(Item::Bowl), - Item::HoneyBottle => ItemStack::from(Item::GlassBottle), - Item::MilkBucket => ItemStack::from(Item::Bucket), - Item::MushroomStew => ItemStack::from(Item::Bowl), - Item::Potion => ItemStack::from(Item::GlassBottle), - Item::RabbitStew => ItemStack::from(Item::Bowl), - Item::SuspiciousStew => ItemStack::from(Item::Bowl), + ItemKind::BeetrootSoup => ItemStack::from(ItemKind::Bowl), + ItemKind::HoneyBottle => ItemStack::from(ItemKind::GlassBottle), + ItemKind::MilkBucket => ItemStack::from(ItemKind::Bucket), + ItemKind::MushroomStew => ItemStack::from(ItemKind::Bowl), + ItemKind::Potion => ItemStack::from(ItemKind::GlassBottle), + ItemKind::RabbitStew => ItemStack::from(ItemKind::Bowl), + ItemKind::SuspiciousStew => ItemStack::from(ItemKind::Bowl), _ => return None, }; Some(UseRemainder { @@ -3032,59 +3040,59 @@ impl DefaultableComponent for UseRemainder { } } impl DefaultableComponent for BannerPatterns { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::BlackBanner => vec![], - Item::BlueBanner => vec![], - Item::BrownBanner => vec![], - Item::CyanBanner => vec![], - Item::GrayBanner => vec![], - Item::GreenBanner => vec![], - Item::LightBlueBanner => vec![], - Item::LightGrayBanner => vec![], - Item::LimeBanner => vec![], - Item::MagentaBanner => vec![], - Item::OrangeBanner => vec![], - Item::PinkBanner => vec![], - Item::PurpleBanner => vec![], - Item::RedBanner => vec![], - Item::Shield => vec![], - Item::WhiteBanner => vec![], - Item::YellowBanner => vec![], + ItemKind::BlackBanner => vec![], + ItemKind::BlueBanner => vec![], + ItemKind::BrownBanner => vec![], + ItemKind::CyanBanner => vec![], + ItemKind::GrayBanner => vec![], + ItemKind::GreenBanner => vec![], + ItemKind::LightBlueBanner => vec![], + ItemKind::LightGrayBanner => vec![], + ItemKind::LimeBanner => vec![], + ItemKind::MagentaBanner => vec![], + ItemKind::OrangeBanner => vec![], + ItemKind::PinkBanner => vec![], + ItemKind::PurpleBanner => vec![], + ItemKind::RedBanner => vec![], + ItemKind::Shield => vec![], + ItemKind::WhiteBanner => vec![], + ItemKind::YellowBanner => vec![], _ => return None, }; Some(BannerPatterns { patterns: value }) } } impl DefaultableComponent for BundleContents { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::BlackBundle => vec![], - Item::BlueBundle => vec![], - Item::BrownBundle => vec![], - Item::Bundle => vec![], - Item::CyanBundle => vec![], - Item::GrayBundle => vec![], - Item::GreenBundle => vec![], - Item::LightBlueBundle => vec![], - Item::LightGrayBundle => vec![], - Item::LimeBundle => vec![], - Item::MagentaBundle => vec![], - Item::OrangeBundle => vec![], - Item::PinkBundle => vec![], - Item::PurpleBundle => vec![], - Item::RedBundle => vec![], - Item::WhiteBundle => vec![], - Item::YellowBundle => vec![], + ItemKind::BlackBundle => vec![], + ItemKind::BlueBundle => vec![], + ItemKind::BrownBundle => vec![], + ItemKind::Bundle => vec![], + ItemKind::CyanBundle => vec![], + ItemKind::GrayBundle => vec![], + ItemKind::GreenBundle => vec![], + ItemKind::LightBlueBundle => vec![], + ItemKind::LightGrayBundle => vec![], + ItemKind::LimeBundle => vec![], + ItemKind::MagentaBundle => vec![], + ItemKind::OrangeBundle => vec![], + ItemKind::PinkBundle => vec![], + ItemKind::PurpleBundle => vec![], + ItemKind::RedBundle => vec![], + ItemKind::WhiteBundle => vec![], + ItemKind::YellowBundle => vec![], _ => return None, }; Some(BundleContents { items: value }) } } impl DefaultableComponent for Equippable { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::BlackCarpet => Equippable { + ItemKind::BlackCarpet => Equippable { allowed_entities: Some(HolderSet::Direct { contents: vec![EntityKind::Llama, EntityKind::TraderLlama], }), @@ -3095,7 +3103,7 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::BlackHarness => Equippable { + ItemKind::BlackHarness => Equippable { allowed_entities: Some(HolderSet::Direct { contents: azalea_registry::tags::entities::CAN_EQUIP_HARNESS .clone() @@ -3110,7 +3118,7 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::BlueCarpet => Equippable { + ItemKind::BlueCarpet => Equippable { allowed_entities: Some(HolderSet::Direct { contents: vec![EntityKind::Llama, EntityKind::TraderLlama], }), @@ -3121,7 +3129,7 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::BlueHarness => Equippable { + ItemKind::BlueHarness => Equippable { allowed_entities: Some(HolderSet::Direct { contents: azalea_registry::tags::entities::CAN_EQUIP_HARNESS .clone() @@ -3136,7 +3144,7 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::BrownCarpet => Equippable { + ItemKind::BrownCarpet => Equippable { allowed_entities: Some(HolderSet::Direct { contents: vec![EntityKind::Llama, EntityKind::TraderLlama], }), @@ -3147,7 +3155,7 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::BrownHarness => Equippable { + ItemKind::BrownHarness => Equippable { allowed_entities: Some(HolderSet::Direct { contents: azalea_registry::tags::entities::CAN_EQUIP_HARNESS .clone() @@ -3162,55 +3170,55 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::CarvedPumpkin => Equippable { + ItemKind::CarvedPumpkin => Equippable { camera_overlay: Some("minecraft:misc/pumpkinblur".into()), slot: EquipmentSlot::Head, swappable: false, ..Equippable::new() }, - Item::ChainmailBoots => Equippable { + ItemKind::ChainmailBoots => Equippable { asset_id: Some("minecraft:chainmail".into()), equip_sound: SoundEvent::ItemArmorEquipChain, slot: EquipmentSlot::Feet, ..Equippable::new() }, - Item::ChainmailChestplate => Equippable { + ItemKind::ChainmailChestplate => Equippable { asset_id: Some("minecraft:chainmail".into()), equip_sound: SoundEvent::ItemArmorEquipChain, slot: EquipmentSlot::Chest, ..Equippable::new() }, - Item::ChainmailHelmet => Equippable { + ItemKind::ChainmailHelmet => Equippable { asset_id: Some("minecraft:chainmail".into()), equip_sound: SoundEvent::ItemArmorEquipChain, slot: EquipmentSlot::Head, ..Equippable::new() }, - Item::ChainmailLeggings => Equippable { + ItemKind::ChainmailLeggings => Equippable { asset_id: Some("minecraft:chainmail".into()), equip_sound: SoundEvent::ItemArmorEquipChain, slot: EquipmentSlot::Legs, ..Equippable::new() }, - Item::CopperBoots => Equippable { + ItemKind::CopperBoots => Equippable { asset_id: Some("minecraft:copper".into()), equip_sound: SoundEvent::ItemArmorEquipCopper, slot: EquipmentSlot::Feet, ..Equippable::new() }, - Item::CopperChestplate => Equippable { + ItemKind::CopperChestplate => Equippable { asset_id: Some("minecraft:copper".into()), equip_sound: SoundEvent::ItemArmorEquipCopper, slot: EquipmentSlot::Chest, ..Equippable::new() }, - Item::CopperHelmet => Equippable { + ItemKind::CopperHelmet => Equippable { asset_id: Some("minecraft:copper".into()), equip_sound: SoundEvent::ItemArmorEquipCopper, slot: EquipmentSlot::Head, ..Equippable::new() }, - Item::CopperHorseArmor => Equippable { + ItemKind::CopperHorseArmor => Equippable { allowed_entities: Some(HolderSet::Direct { contents: azalea_registry::tags::entities::CAN_WEAR_HORSE_ARMOR .clone() @@ -3225,13 +3233,13 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::CopperLeggings => Equippable { + ItemKind::CopperLeggings => Equippable { asset_id: Some("minecraft:copper".into()), equip_sound: SoundEvent::ItemArmorEquipCopper, slot: EquipmentSlot::Legs, ..Equippable::new() }, - Item::CopperNautilusArmor => Equippable { + ItemKind::CopperNautilusArmor => Equippable { allowed_entities: Some(HolderSet::Direct { contents: azalea_registry::tags::entities::CAN_WEAR_NAUTILUS_ARMOR .clone() @@ -3247,12 +3255,12 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::CreeperHead => Equippable { + ItemKind::CreeperHead => Equippable { slot: EquipmentSlot::Head, swappable: false, ..Equippable::new() }, - Item::CyanCarpet => Equippable { + ItemKind::CyanCarpet => Equippable { allowed_entities: Some(HolderSet::Direct { contents: vec![EntityKind::Llama, EntityKind::TraderLlama], }), @@ -3263,7 +3271,7 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::CyanHarness => Equippable { + ItemKind::CyanHarness => Equippable { allowed_entities: Some(HolderSet::Direct { contents: azalea_registry::tags::entities::CAN_EQUIP_HARNESS .clone() @@ -3278,25 +3286,25 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::DiamondBoots => Equippable { + ItemKind::DiamondBoots => Equippable { asset_id: Some("minecraft:diamond".into()), equip_sound: SoundEvent::ItemArmorEquipDiamond, slot: EquipmentSlot::Feet, ..Equippable::new() }, - Item::DiamondChestplate => Equippable { + ItemKind::DiamondChestplate => Equippable { asset_id: Some("minecraft:diamond".into()), equip_sound: SoundEvent::ItemArmorEquipDiamond, slot: EquipmentSlot::Chest, ..Equippable::new() }, - Item::DiamondHelmet => Equippable { + ItemKind::DiamondHelmet => Equippable { asset_id: Some("minecraft:diamond".into()), equip_sound: SoundEvent::ItemArmorEquipDiamond, slot: EquipmentSlot::Head, ..Equippable::new() }, - Item::DiamondHorseArmor => Equippable { + ItemKind::DiamondHorseArmor => Equippable { allowed_entities: Some(HolderSet::Direct { contents: azalea_registry::tags::entities::CAN_WEAR_HORSE_ARMOR .clone() @@ -3311,13 +3319,13 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::DiamondLeggings => Equippable { + ItemKind::DiamondLeggings => Equippable { asset_id: Some("minecraft:diamond".into()), equip_sound: SoundEvent::ItemArmorEquipDiamond, slot: EquipmentSlot::Legs, ..Equippable::new() }, - Item::DiamondNautilusArmor => Equippable { + ItemKind::DiamondNautilusArmor => Equippable { allowed_entities: Some(HolderSet::Direct { contents: azalea_registry::tags::entities::CAN_WEAR_NAUTILUS_ARMOR .clone() @@ -3333,37 +3341,37 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::DragonHead => Equippable { + ItemKind::DragonHead => Equippable { slot: EquipmentSlot::Head, swappable: false, ..Equippable::new() }, - Item::Elytra => Equippable { + ItemKind::Elytra => Equippable { asset_id: Some("minecraft:elytra".into()), damage_on_hurt: false, equip_sound: SoundEvent::ItemArmorEquipElytra, slot: EquipmentSlot::Chest, ..Equippable::new() }, - Item::GoldenBoots => Equippable { + ItemKind::GoldenBoots => Equippable { asset_id: Some("minecraft:gold".into()), equip_sound: SoundEvent::ItemArmorEquipGold, slot: EquipmentSlot::Feet, ..Equippable::new() }, - Item::GoldenChestplate => Equippable { + ItemKind::GoldenChestplate => Equippable { asset_id: Some("minecraft:gold".into()), equip_sound: SoundEvent::ItemArmorEquipGold, slot: EquipmentSlot::Chest, ..Equippable::new() }, - Item::GoldenHelmet => Equippable { + ItemKind::GoldenHelmet => Equippable { asset_id: Some("minecraft:gold".into()), equip_sound: SoundEvent::ItemArmorEquipGold, slot: EquipmentSlot::Head, ..Equippable::new() }, - Item::GoldenHorseArmor => Equippable { + ItemKind::GoldenHorseArmor => Equippable { allowed_entities: Some(HolderSet::Direct { contents: azalea_registry::tags::entities::CAN_WEAR_HORSE_ARMOR .clone() @@ -3378,13 +3386,13 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::GoldenLeggings => Equippable { + ItemKind::GoldenLeggings => Equippable { asset_id: Some("minecraft:gold".into()), equip_sound: SoundEvent::ItemArmorEquipGold, slot: EquipmentSlot::Legs, ..Equippable::new() }, - Item::GoldenNautilusArmor => Equippable { + ItemKind::GoldenNautilusArmor => Equippable { allowed_entities: Some(HolderSet::Direct { contents: azalea_registry::tags::entities::CAN_WEAR_NAUTILUS_ARMOR .clone() @@ -3400,7 +3408,7 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::GrayCarpet => Equippable { + ItemKind::GrayCarpet => Equippable { allowed_entities: Some(HolderSet::Direct { contents: vec![EntityKind::Llama, EntityKind::TraderLlama], }), @@ -3411,7 +3419,7 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::GrayHarness => Equippable { + ItemKind::GrayHarness => Equippable { allowed_entities: Some(HolderSet::Direct { contents: azalea_registry::tags::entities::CAN_EQUIP_HARNESS .clone() @@ -3426,7 +3434,7 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::GreenCarpet => Equippable { + ItemKind::GreenCarpet => Equippable { allowed_entities: Some(HolderSet::Direct { contents: vec![EntityKind::Llama, EntityKind::TraderLlama], }), @@ -3437,7 +3445,7 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::GreenHarness => Equippable { + ItemKind::GreenHarness => Equippable { allowed_entities: Some(HolderSet::Direct { contents: azalea_registry::tags::entities::CAN_EQUIP_HARNESS .clone() @@ -3452,25 +3460,25 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::IronBoots => Equippable { + ItemKind::IronBoots => Equippable { asset_id: Some("minecraft:iron".into()), equip_sound: SoundEvent::ItemArmorEquipIron, slot: EquipmentSlot::Feet, ..Equippable::new() }, - Item::IronChestplate => Equippable { + ItemKind::IronChestplate => Equippable { asset_id: Some("minecraft:iron".into()), equip_sound: SoundEvent::ItemArmorEquipIron, slot: EquipmentSlot::Chest, ..Equippable::new() }, - Item::IronHelmet => Equippable { + ItemKind::IronHelmet => Equippable { asset_id: Some("minecraft:iron".into()), equip_sound: SoundEvent::ItemArmorEquipIron, slot: EquipmentSlot::Head, ..Equippable::new() }, - Item::IronHorseArmor => Equippable { + ItemKind::IronHorseArmor => Equippable { allowed_entities: Some(HolderSet::Direct { contents: azalea_registry::tags::entities::CAN_WEAR_HORSE_ARMOR .clone() @@ -3485,13 +3493,13 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::IronLeggings => Equippable { + ItemKind::IronLeggings => Equippable { asset_id: Some("minecraft:iron".into()), equip_sound: SoundEvent::ItemArmorEquipIron, slot: EquipmentSlot::Legs, ..Equippable::new() }, - Item::IronNautilusArmor => Equippable { + ItemKind::IronNautilusArmor => Equippable { allowed_entities: Some(HolderSet::Direct { contents: azalea_registry::tags::entities::CAN_WEAR_NAUTILUS_ARMOR .clone() @@ -3507,25 +3515,25 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::LeatherBoots => Equippable { + ItemKind::LeatherBoots => Equippable { asset_id: Some("minecraft:leather".into()), equip_sound: SoundEvent::ItemArmorEquipLeather, slot: EquipmentSlot::Feet, ..Equippable::new() }, - Item::LeatherChestplate => Equippable { + ItemKind::LeatherChestplate => Equippable { asset_id: Some("minecraft:leather".into()), equip_sound: SoundEvent::ItemArmorEquipLeather, slot: EquipmentSlot::Chest, ..Equippable::new() }, - Item::LeatherHelmet => Equippable { + ItemKind::LeatherHelmet => Equippable { asset_id: Some("minecraft:leather".into()), equip_sound: SoundEvent::ItemArmorEquipLeather, slot: EquipmentSlot::Head, ..Equippable::new() }, - Item::LeatherHorseArmor => Equippable { + ItemKind::LeatherHorseArmor => Equippable { allowed_entities: Some(HolderSet::Direct { contents: azalea_registry::tags::entities::CAN_WEAR_HORSE_ARMOR .clone() @@ -3540,13 +3548,13 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::LeatherLeggings => Equippable { + ItemKind::LeatherLeggings => Equippable { asset_id: Some("minecraft:leather".into()), equip_sound: SoundEvent::ItemArmorEquipLeather, slot: EquipmentSlot::Legs, ..Equippable::new() }, - Item::LightBlueCarpet => Equippable { + ItemKind::LightBlueCarpet => Equippable { allowed_entities: Some(HolderSet::Direct { contents: vec![EntityKind::Llama, EntityKind::TraderLlama], }), @@ -3557,7 +3565,7 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::LightBlueHarness => Equippable { + ItemKind::LightBlueHarness => Equippable { allowed_entities: Some(HolderSet::Direct { contents: azalea_registry::tags::entities::CAN_EQUIP_HARNESS .clone() @@ -3572,7 +3580,7 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::LightGrayCarpet => Equippable { + ItemKind::LightGrayCarpet => Equippable { allowed_entities: Some(HolderSet::Direct { contents: vec![EntityKind::Llama, EntityKind::TraderLlama], }), @@ -3583,7 +3591,7 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::LightGrayHarness => Equippable { + ItemKind::LightGrayHarness => Equippable { allowed_entities: Some(HolderSet::Direct { contents: azalea_registry::tags::entities::CAN_EQUIP_HARNESS .clone() @@ -3598,7 +3606,7 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::LimeCarpet => Equippable { + ItemKind::LimeCarpet => Equippable { allowed_entities: Some(HolderSet::Direct { contents: vec![EntityKind::Llama, EntityKind::TraderLlama], }), @@ -3609,7 +3617,7 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::LimeHarness => Equippable { + ItemKind::LimeHarness => Equippable { allowed_entities: Some(HolderSet::Direct { contents: azalea_registry::tags::entities::CAN_EQUIP_HARNESS .clone() @@ -3624,7 +3632,7 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::MagentaCarpet => Equippable { + ItemKind::MagentaCarpet => Equippable { allowed_entities: Some(HolderSet::Direct { contents: vec![EntityKind::Llama, EntityKind::TraderLlama], }), @@ -3635,7 +3643,7 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::MagentaHarness => Equippable { + ItemKind::MagentaHarness => Equippable { allowed_entities: Some(HolderSet::Direct { contents: azalea_registry::tags::entities::CAN_EQUIP_HARNESS .clone() @@ -3650,25 +3658,25 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::NetheriteBoots => Equippable { + ItemKind::NetheriteBoots => Equippable { asset_id: Some("minecraft:netherite".into()), equip_sound: SoundEvent::ItemArmorEquipNetherite, slot: EquipmentSlot::Feet, ..Equippable::new() }, - Item::NetheriteChestplate => Equippable { + ItemKind::NetheriteChestplate => Equippable { asset_id: Some("minecraft:netherite".into()), equip_sound: SoundEvent::ItemArmorEquipNetherite, slot: EquipmentSlot::Chest, ..Equippable::new() }, - Item::NetheriteHelmet => Equippable { + ItemKind::NetheriteHelmet => Equippable { asset_id: Some("minecraft:netherite".into()), equip_sound: SoundEvent::ItemArmorEquipNetherite, slot: EquipmentSlot::Head, ..Equippable::new() }, - Item::NetheriteHorseArmor => Equippable { + ItemKind::NetheriteHorseArmor => Equippable { allowed_entities: Some(HolderSet::Direct { contents: azalea_registry::tags::entities::CAN_WEAR_HORSE_ARMOR .clone() @@ -3683,13 +3691,13 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::NetheriteLeggings => Equippable { + ItemKind::NetheriteLeggings => Equippable { asset_id: Some("minecraft:netherite".into()), equip_sound: SoundEvent::ItemArmorEquipNetherite, slot: EquipmentSlot::Legs, ..Equippable::new() }, - Item::NetheriteNautilusArmor => Equippable { + ItemKind::NetheriteNautilusArmor => Equippable { allowed_entities: Some(HolderSet::Direct { contents: azalea_registry::tags::entities::CAN_WEAR_NAUTILUS_ARMOR .clone() @@ -3705,7 +3713,7 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::OrangeCarpet => Equippable { + ItemKind::OrangeCarpet => Equippable { allowed_entities: Some(HolderSet::Direct { contents: vec![EntityKind::Llama, EntityKind::TraderLlama], }), @@ -3716,7 +3724,7 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::OrangeHarness => Equippable { + ItemKind::OrangeHarness => Equippable { allowed_entities: Some(HolderSet::Direct { contents: azalea_registry::tags::entities::CAN_EQUIP_HARNESS .clone() @@ -3731,12 +3739,12 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::PiglinHead => Equippable { + ItemKind::PiglinHead => Equippable { slot: EquipmentSlot::Head, swappable: false, ..Equippable::new() }, - Item::PinkCarpet => Equippable { + ItemKind::PinkCarpet => Equippable { allowed_entities: Some(HolderSet::Direct { contents: vec![EntityKind::Llama, EntityKind::TraderLlama], }), @@ -3747,7 +3755,7 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::PinkHarness => Equippable { + ItemKind::PinkHarness => Equippable { allowed_entities: Some(HolderSet::Direct { contents: azalea_registry::tags::entities::CAN_EQUIP_HARNESS .clone() @@ -3762,12 +3770,12 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::PlayerHead => Equippable { + ItemKind::PlayerHead => Equippable { slot: EquipmentSlot::Head, swappable: false, ..Equippable::new() }, - Item::PurpleCarpet => Equippable { + ItemKind::PurpleCarpet => Equippable { allowed_entities: Some(HolderSet::Direct { contents: vec![EntityKind::Llama, EntityKind::TraderLlama], }), @@ -3778,7 +3786,7 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::PurpleHarness => Equippable { + ItemKind::PurpleHarness => Equippable { allowed_entities: Some(HolderSet::Direct { contents: azalea_registry::tags::entities::CAN_EQUIP_HARNESS .clone() @@ -3793,7 +3801,7 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::RedCarpet => Equippable { + ItemKind::RedCarpet => Equippable { allowed_entities: Some(HolderSet::Direct { contents: vec![EntityKind::Llama, EntityKind::TraderLlama], }), @@ -3804,7 +3812,7 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::RedHarness => Equippable { + ItemKind::RedHarness => Equippable { allowed_entities: Some(HolderSet::Direct { contents: azalea_registry::tags::entities::CAN_EQUIP_HARNESS .clone() @@ -3819,7 +3827,7 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::Saddle => Equippable { + ItemKind::Saddle => Equippable { allowed_entities: Some(HolderSet::Direct { contents: azalea_registry::tags::entities::CAN_EQUIP_SADDLE .clone() @@ -3834,23 +3842,23 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Saddle, ..Equippable::new() }, - Item::Shield => Equippable { + ItemKind::Shield => Equippable { slot: EquipmentSlot::Offhand, swappable: false, ..Equippable::new() }, - Item::SkeletonSkull => Equippable { + ItemKind::SkeletonSkull => Equippable { slot: EquipmentSlot::Head, swappable: false, ..Equippable::new() }, - Item::TurtleHelmet => Equippable { + ItemKind::TurtleHelmet => Equippable { asset_id: Some("minecraft:turtle_scute".into()), equip_sound: SoundEvent::ItemArmorEquipTurtle, slot: EquipmentSlot::Head, ..Equippable::new() }, - Item::WhiteCarpet => Equippable { + ItemKind::WhiteCarpet => Equippable { allowed_entities: Some(HolderSet::Direct { contents: vec![EntityKind::Llama, EntityKind::TraderLlama], }), @@ -3861,7 +3869,7 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::WhiteHarness => Equippable { + ItemKind::WhiteHarness => Equippable { allowed_entities: Some(HolderSet::Direct { contents: azalea_registry::tags::entities::CAN_EQUIP_HARNESS .clone() @@ -3876,12 +3884,12 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::WitherSkeletonSkull => Equippable { + ItemKind::WitherSkeletonSkull => Equippable { slot: EquipmentSlot::Head, swappable: false, ..Equippable::new() }, - Item::WolfArmor => Equippable { + ItemKind::WolfArmor => Equippable { allowed_entities: Some(HolderSet::Direct { contents: vec![EntityKind::Wolf], }), @@ -3892,7 +3900,7 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::YellowCarpet => Equippable { + ItemKind::YellowCarpet => Equippable { allowed_entities: Some(HolderSet::Direct { contents: vec![EntityKind::Llama, EntityKind::TraderLlama], }), @@ -3903,7 +3911,7 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::YellowHarness => Equippable { + ItemKind::YellowHarness => Equippable { allowed_entities: Some(HolderSet::Direct { contents: azalea_registry::tags::entities::CAN_EQUIP_HARNESS .clone() @@ -3918,7 +3926,7 @@ impl DefaultableComponent for Equippable { slot: EquipmentSlot::Body, ..Equippable::new() }, - Item::ZombieHead => Equippable { + ItemKind::ZombieHead => Equippable { slot: EquipmentSlot::Head, swappable: false, ..Equippable::new() @@ -3929,745 +3937,747 @@ impl DefaultableComponent for Equippable { } } impl DefaultableComponent for ChickenVariant { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::BlueEgg => ChickenVariant::Referenced("minecraft:cold".into()), - Item::BrownEgg => ChickenVariant::Referenced("minecraft:warm".into()), - Item::Egg => ChickenVariant::Referenced("minecraft:temperate".into()), + ItemKind::BlueEgg => ChickenVariant::Referenced("minecraft:cold".into()), + ItemKind::BrownEgg => ChickenVariant::Referenced("minecraft:warm".into()), + ItemKind::Egg => ChickenVariant::Referenced("minecraft:temperate".into()), _ => return None, }; Some(value) } } impl DefaultableComponent for Enchantable { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::Book => 1, - Item::Bow => 1, - Item::ChainmailBoots => 12, - Item::ChainmailChestplate => 12, - Item::ChainmailHelmet => 12, - Item::ChainmailLeggings => 12, - Item::CopperAxe => 13, - Item::CopperBoots => 8, - Item::CopperChestplate => 8, - Item::CopperHelmet => 8, - Item::CopperHoe => 13, - Item::CopperLeggings => 8, - Item::CopperPickaxe => 13, - Item::CopperShovel => 13, - Item::CopperSpear => 13, - Item::CopperSword => 13, - Item::Crossbow => 1, - Item::DiamondAxe => 10, - Item::DiamondBoots => 10, - Item::DiamondChestplate => 10, - Item::DiamondHelmet => 10, - Item::DiamondHoe => 10, - Item::DiamondLeggings => 10, - Item::DiamondPickaxe => 10, - Item::DiamondShovel => 10, - Item::DiamondSpear => 10, - Item::DiamondSword => 10, - Item::FishingRod => 1, - Item::GoldenAxe => 22, - Item::GoldenBoots => 25, - Item::GoldenChestplate => 25, - Item::GoldenHelmet => 25, - Item::GoldenHoe => 22, - Item::GoldenLeggings => 25, - Item::GoldenPickaxe => 22, - Item::GoldenShovel => 22, - Item::GoldenSpear => 22, - Item::GoldenSword => 22, - Item::IronAxe => 14, - Item::IronBoots => 9, - Item::IronChestplate => 9, - Item::IronHelmet => 9, - Item::IronHoe => 14, - Item::IronLeggings => 9, - Item::IronPickaxe => 14, - Item::IronShovel => 14, - Item::IronSpear => 14, - Item::IronSword => 14, - Item::LeatherBoots => 15, - Item::LeatherChestplate => 15, - Item::LeatherHelmet => 15, - Item::LeatherLeggings => 15, - Item::Mace => 15, - Item::NetheriteAxe => 15, - Item::NetheriteBoots => 15, - Item::NetheriteChestplate => 15, - Item::NetheriteHelmet => 15, - Item::NetheriteHoe => 15, - Item::NetheriteLeggings => 15, - Item::NetheritePickaxe => 15, - Item::NetheriteShovel => 15, - Item::NetheriteSpear => 15, - Item::NetheriteSword => 15, - Item::StoneAxe => 5, - Item::StoneHoe => 5, - Item::StonePickaxe => 5, - Item::StoneShovel => 5, - Item::StoneSpear => 5, - Item::StoneSword => 5, - Item::Trident => 1, - Item::TurtleHelmet => 9, - Item::WoodenAxe => 15, - Item::WoodenHoe => 15, - Item::WoodenPickaxe => 15, - Item::WoodenShovel => 15, - Item::WoodenSpear => 15, - Item::WoodenSword => 15, + ItemKind::Book => 1, + ItemKind::Bow => 1, + ItemKind::ChainmailBoots => 12, + ItemKind::ChainmailChestplate => 12, + ItemKind::ChainmailHelmet => 12, + ItemKind::ChainmailLeggings => 12, + ItemKind::CopperAxe => 13, + ItemKind::CopperBoots => 8, + ItemKind::CopperChestplate => 8, + ItemKind::CopperHelmet => 8, + ItemKind::CopperHoe => 13, + ItemKind::CopperLeggings => 8, + ItemKind::CopperPickaxe => 13, + ItemKind::CopperShovel => 13, + ItemKind::CopperSpear => 13, + ItemKind::CopperSword => 13, + ItemKind::Crossbow => 1, + ItemKind::DiamondAxe => 10, + ItemKind::DiamondBoots => 10, + ItemKind::DiamondChestplate => 10, + ItemKind::DiamondHelmet => 10, + ItemKind::DiamondHoe => 10, + ItemKind::DiamondLeggings => 10, + ItemKind::DiamondPickaxe => 10, + ItemKind::DiamondShovel => 10, + ItemKind::DiamondSpear => 10, + ItemKind::DiamondSword => 10, + ItemKind::FishingRod => 1, + ItemKind::GoldenAxe => 22, + ItemKind::GoldenBoots => 25, + ItemKind::GoldenChestplate => 25, + ItemKind::GoldenHelmet => 25, + ItemKind::GoldenHoe => 22, + ItemKind::GoldenLeggings => 25, + ItemKind::GoldenPickaxe => 22, + ItemKind::GoldenShovel => 22, + ItemKind::GoldenSpear => 22, + ItemKind::GoldenSword => 22, + ItemKind::IronAxe => 14, + ItemKind::IronBoots => 9, + ItemKind::IronChestplate => 9, + ItemKind::IronHelmet => 9, + ItemKind::IronHoe => 14, + ItemKind::IronLeggings => 9, + ItemKind::IronPickaxe => 14, + ItemKind::IronShovel => 14, + ItemKind::IronSpear => 14, + ItemKind::IronSword => 14, + ItemKind::LeatherBoots => 15, + ItemKind::LeatherChestplate => 15, + ItemKind::LeatherHelmet => 15, + ItemKind::LeatherLeggings => 15, + ItemKind::Mace => 15, + ItemKind::NetheriteAxe => 15, + ItemKind::NetheriteBoots => 15, + ItemKind::NetheriteChestplate => 15, + ItemKind::NetheriteHelmet => 15, + ItemKind::NetheriteHoe => 15, + ItemKind::NetheriteLeggings => 15, + ItemKind::NetheritePickaxe => 15, + ItemKind::NetheriteShovel => 15, + ItemKind::NetheriteSpear => 15, + ItemKind::NetheriteSword => 15, + ItemKind::StoneAxe => 5, + ItemKind::StoneHoe => 5, + ItemKind::StonePickaxe => 5, + ItemKind::StoneShovel => 5, + ItemKind::StoneSpear => 5, + ItemKind::StoneSword => 5, + ItemKind::Trident => 1, + ItemKind::TurtleHelmet => 9, + ItemKind::WoodenAxe => 15, + ItemKind::WoodenHoe => 15, + ItemKind::WoodenPickaxe => 15, + ItemKind::WoodenShovel => 15, + ItemKind::WoodenSpear => 15, + ItemKind::WoodenSword => 15, _ => return None, }; Some(Enchantable { value: value }) } } impl DefaultableComponent for ProvidesBannerPatterns { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::BordureIndentedBannerPattern => "#minecraft:pattern_item/bordure_indented".into(), - Item::CreeperBannerPattern => "#minecraft:pattern_item/creeper".into(), - Item::FieldMasonedBannerPattern => "#minecraft:pattern_item/field_masoned".into(), - Item::FlowBannerPattern => "#minecraft:pattern_item/flow".into(), - Item::FlowerBannerPattern => "#minecraft:pattern_item/flower".into(), - Item::GlobeBannerPattern => "#minecraft:pattern_item/globe".into(), - Item::GusterBannerPattern => "#minecraft:pattern_item/guster".into(), - Item::MojangBannerPattern => "#minecraft:pattern_item/mojang".into(), - Item::PiglinBannerPattern => "#minecraft:pattern_item/piglin".into(), - Item::SkullBannerPattern => "#minecraft:pattern_item/skull".into(), + ItemKind::BordureIndentedBannerPattern => { + "#minecraft:pattern_item/bordure_indented".into() + } + ItemKind::CreeperBannerPattern => "#minecraft:pattern_item/creeper".into(), + ItemKind::FieldMasonedBannerPattern => "#minecraft:pattern_item/field_masoned".into(), + ItemKind::FlowBannerPattern => "#minecraft:pattern_item/flow".into(), + ItemKind::FlowerBannerPattern => "#minecraft:pattern_item/flower".into(), + ItemKind::GlobeBannerPattern => "#minecraft:pattern_item/globe".into(), + ItemKind::GusterBannerPattern => "#minecraft:pattern_item/guster".into(), + ItemKind::MojangBannerPattern => "#minecraft:pattern_item/mojang".into(), + ItemKind::PiglinBannerPattern => "#minecraft:pattern_item/piglin".into(), + ItemKind::SkullBannerPattern => "#minecraft:pattern_item/skull".into(), _ => return None, }; Some(ProvidesBannerPatterns { key: value }) } } impl DefaultableComponent for Damage { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::Bow => 0, - Item::Brush => 0, - Item::CarrotOnAStick => 0, - Item::ChainmailBoots => 0, - Item::ChainmailChestplate => 0, - Item::ChainmailHelmet => 0, - Item::ChainmailLeggings => 0, - Item::CopperAxe => 0, - Item::CopperBoots => 0, - Item::CopperChestplate => 0, - Item::CopperHelmet => 0, - Item::CopperHoe => 0, - Item::CopperLeggings => 0, - Item::CopperPickaxe => 0, - Item::CopperShovel => 0, - Item::CopperSpear => 0, - Item::CopperSword => 0, - Item::Crossbow => 0, - Item::DiamondAxe => 0, - Item::DiamondBoots => 0, - Item::DiamondChestplate => 0, - Item::DiamondHelmet => 0, - Item::DiamondHoe => 0, - Item::DiamondLeggings => 0, - Item::DiamondPickaxe => 0, - Item::DiamondShovel => 0, - Item::DiamondSpear => 0, - Item::DiamondSword => 0, - Item::Elytra => 0, - Item::FishingRod => 0, - Item::FlintAndSteel => 0, - Item::GoldenAxe => 0, - Item::GoldenBoots => 0, - Item::GoldenChestplate => 0, - Item::GoldenHelmet => 0, - Item::GoldenHoe => 0, - Item::GoldenLeggings => 0, - Item::GoldenPickaxe => 0, - Item::GoldenShovel => 0, - Item::GoldenSpear => 0, - Item::GoldenSword => 0, - Item::IronAxe => 0, - Item::IronBoots => 0, - Item::IronChestplate => 0, - Item::IronHelmet => 0, - Item::IronHoe => 0, - Item::IronLeggings => 0, - Item::IronPickaxe => 0, - Item::IronShovel => 0, - Item::IronSpear => 0, - Item::IronSword => 0, - Item::LeatherBoots => 0, - Item::LeatherChestplate => 0, - Item::LeatherHelmet => 0, - Item::LeatherLeggings => 0, - Item::Mace => 0, - Item::NetheriteAxe => 0, - Item::NetheriteBoots => 0, - Item::NetheriteChestplate => 0, - Item::NetheriteHelmet => 0, - Item::NetheriteHoe => 0, - Item::NetheriteLeggings => 0, - Item::NetheritePickaxe => 0, - Item::NetheriteShovel => 0, - Item::NetheriteSpear => 0, - Item::NetheriteSword => 0, - Item::Shears => 0, - Item::Shield => 0, - Item::StoneAxe => 0, - Item::StoneHoe => 0, - Item::StonePickaxe => 0, - Item::StoneShovel => 0, - Item::StoneSpear => 0, - Item::StoneSword => 0, - Item::Trident => 0, - Item::TurtleHelmet => 0, - Item::WarpedFungusOnAStick => 0, - Item::WolfArmor => 0, - Item::WoodenAxe => 0, - Item::WoodenHoe => 0, - Item::WoodenPickaxe => 0, - Item::WoodenShovel => 0, - Item::WoodenSpear => 0, - Item::WoodenSword => 0, + ItemKind::Bow => 0, + ItemKind::Brush => 0, + ItemKind::CarrotOnAStick => 0, + ItemKind::ChainmailBoots => 0, + ItemKind::ChainmailChestplate => 0, + ItemKind::ChainmailHelmet => 0, + ItemKind::ChainmailLeggings => 0, + ItemKind::CopperAxe => 0, + ItemKind::CopperBoots => 0, + ItemKind::CopperChestplate => 0, + ItemKind::CopperHelmet => 0, + ItemKind::CopperHoe => 0, + ItemKind::CopperLeggings => 0, + ItemKind::CopperPickaxe => 0, + ItemKind::CopperShovel => 0, + ItemKind::CopperSpear => 0, + ItemKind::CopperSword => 0, + ItemKind::Crossbow => 0, + ItemKind::DiamondAxe => 0, + ItemKind::DiamondBoots => 0, + ItemKind::DiamondChestplate => 0, + ItemKind::DiamondHelmet => 0, + ItemKind::DiamondHoe => 0, + ItemKind::DiamondLeggings => 0, + ItemKind::DiamondPickaxe => 0, + ItemKind::DiamondShovel => 0, + ItemKind::DiamondSpear => 0, + ItemKind::DiamondSword => 0, + ItemKind::Elytra => 0, + ItemKind::FishingRod => 0, + ItemKind::FlintAndSteel => 0, + ItemKind::GoldenAxe => 0, + ItemKind::GoldenBoots => 0, + ItemKind::GoldenChestplate => 0, + ItemKind::GoldenHelmet => 0, + ItemKind::GoldenHoe => 0, + ItemKind::GoldenLeggings => 0, + ItemKind::GoldenPickaxe => 0, + ItemKind::GoldenShovel => 0, + ItemKind::GoldenSpear => 0, + ItemKind::GoldenSword => 0, + ItemKind::IronAxe => 0, + ItemKind::IronBoots => 0, + ItemKind::IronChestplate => 0, + ItemKind::IronHelmet => 0, + ItemKind::IronHoe => 0, + ItemKind::IronLeggings => 0, + ItemKind::IronPickaxe => 0, + ItemKind::IronShovel => 0, + ItemKind::IronSpear => 0, + ItemKind::IronSword => 0, + ItemKind::LeatherBoots => 0, + ItemKind::LeatherChestplate => 0, + ItemKind::LeatherHelmet => 0, + ItemKind::LeatherLeggings => 0, + ItemKind::Mace => 0, + ItemKind::NetheriteAxe => 0, + ItemKind::NetheriteBoots => 0, + ItemKind::NetheriteChestplate => 0, + ItemKind::NetheriteHelmet => 0, + ItemKind::NetheriteHoe => 0, + ItemKind::NetheriteLeggings => 0, + ItemKind::NetheritePickaxe => 0, + ItemKind::NetheriteShovel => 0, + ItemKind::NetheriteSpear => 0, + ItemKind::NetheriteSword => 0, + ItemKind::Shears => 0, + ItemKind::Shield => 0, + ItemKind::StoneAxe => 0, + ItemKind::StoneHoe => 0, + ItemKind::StonePickaxe => 0, + ItemKind::StoneShovel => 0, + ItemKind::StoneSpear => 0, + ItemKind::StoneSword => 0, + ItemKind::Trident => 0, + ItemKind::TurtleHelmet => 0, + ItemKind::WarpedFungusOnAStick => 0, + ItemKind::WolfArmor => 0, + ItemKind::WoodenAxe => 0, + ItemKind::WoodenHoe => 0, + ItemKind::WoodenPickaxe => 0, + ItemKind::WoodenShovel => 0, + ItemKind::WoodenSpear => 0, + ItemKind::WoodenSword => 0, _ => return None, }; Some(Damage { amount: value }) } } impl DefaultableComponent for MaxDamage { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::Bow => 384, - Item::Brush => 64, - Item::CarrotOnAStick => 25, - Item::ChainmailBoots => 195, - Item::ChainmailChestplate => 240, - Item::ChainmailHelmet => 165, - Item::ChainmailLeggings => 225, - Item::CopperAxe => 190, - Item::CopperBoots => 143, - Item::CopperChestplate => 176, - Item::CopperHelmet => 121, - Item::CopperHoe => 190, - Item::CopperLeggings => 165, - Item::CopperPickaxe => 190, - Item::CopperShovel => 190, - Item::CopperSpear => 190, - Item::CopperSword => 190, - Item::Crossbow => 465, - Item::DiamondAxe => 1561, - Item::DiamondBoots => 429, - Item::DiamondChestplate => 528, - Item::DiamondHelmet => 363, - Item::DiamondHoe => 1561, - Item::DiamondLeggings => 495, - Item::DiamondPickaxe => 1561, - Item::DiamondShovel => 1561, - Item::DiamondSpear => 1561, - Item::DiamondSword => 1561, - Item::Elytra => 432, - Item::FishingRod => 64, - Item::FlintAndSteel => 64, - Item::GoldenAxe => 32, - Item::GoldenBoots => 91, - Item::GoldenChestplate => 112, - Item::GoldenHelmet => 77, - Item::GoldenHoe => 32, - Item::GoldenLeggings => 105, - Item::GoldenPickaxe => 32, - Item::GoldenShovel => 32, - Item::GoldenSpear => 32, - Item::GoldenSword => 32, - Item::IronAxe => 250, - Item::IronBoots => 195, - Item::IronChestplate => 240, - Item::IronHelmet => 165, - Item::IronHoe => 250, - Item::IronLeggings => 225, - Item::IronPickaxe => 250, - Item::IronShovel => 250, - Item::IronSpear => 250, - Item::IronSword => 250, - Item::LeatherBoots => 65, - Item::LeatherChestplate => 80, - Item::LeatherHelmet => 55, - Item::LeatherLeggings => 75, - Item::Mace => 500, - Item::NetheriteAxe => 2031, - Item::NetheriteBoots => 481, - Item::NetheriteChestplate => 592, - Item::NetheriteHelmet => 407, - Item::NetheriteHoe => 2031, - Item::NetheriteLeggings => 555, - Item::NetheritePickaxe => 2031, - Item::NetheriteShovel => 2031, - Item::NetheriteSpear => 2031, - Item::NetheriteSword => 2031, - Item::Shears => 238, - Item::Shield => 336, - Item::StoneAxe => 131, - Item::StoneHoe => 131, - Item::StonePickaxe => 131, - Item::StoneShovel => 131, - Item::StoneSpear => 131, - Item::StoneSword => 131, - Item::Trident => 250, - Item::TurtleHelmet => 275, - Item::WarpedFungusOnAStick => 100, - Item::WolfArmor => 64, - Item::WoodenAxe => 59, - Item::WoodenHoe => 59, - Item::WoodenPickaxe => 59, - Item::WoodenShovel => 59, - Item::WoodenSpear => 59, - Item::WoodenSword => 59, + ItemKind::Bow => 384, + ItemKind::Brush => 64, + ItemKind::CarrotOnAStick => 25, + ItemKind::ChainmailBoots => 195, + ItemKind::ChainmailChestplate => 240, + ItemKind::ChainmailHelmet => 165, + ItemKind::ChainmailLeggings => 225, + ItemKind::CopperAxe => 190, + ItemKind::CopperBoots => 143, + ItemKind::CopperChestplate => 176, + ItemKind::CopperHelmet => 121, + ItemKind::CopperHoe => 190, + ItemKind::CopperLeggings => 165, + ItemKind::CopperPickaxe => 190, + ItemKind::CopperShovel => 190, + ItemKind::CopperSpear => 190, + ItemKind::CopperSword => 190, + ItemKind::Crossbow => 465, + ItemKind::DiamondAxe => 1561, + ItemKind::DiamondBoots => 429, + ItemKind::DiamondChestplate => 528, + ItemKind::DiamondHelmet => 363, + ItemKind::DiamondHoe => 1561, + ItemKind::DiamondLeggings => 495, + ItemKind::DiamondPickaxe => 1561, + ItemKind::DiamondShovel => 1561, + ItemKind::DiamondSpear => 1561, + ItemKind::DiamondSword => 1561, + ItemKind::Elytra => 432, + ItemKind::FishingRod => 64, + ItemKind::FlintAndSteel => 64, + ItemKind::GoldenAxe => 32, + ItemKind::GoldenBoots => 91, + ItemKind::GoldenChestplate => 112, + ItemKind::GoldenHelmet => 77, + ItemKind::GoldenHoe => 32, + ItemKind::GoldenLeggings => 105, + ItemKind::GoldenPickaxe => 32, + ItemKind::GoldenShovel => 32, + ItemKind::GoldenSpear => 32, + ItemKind::GoldenSword => 32, + ItemKind::IronAxe => 250, + ItemKind::IronBoots => 195, + ItemKind::IronChestplate => 240, + ItemKind::IronHelmet => 165, + ItemKind::IronHoe => 250, + ItemKind::IronLeggings => 225, + ItemKind::IronPickaxe => 250, + ItemKind::IronShovel => 250, + ItemKind::IronSpear => 250, + ItemKind::IronSword => 250, + ItemKind::LeatherBoots => 65, + ItemKind::LeatherChestplate => 80, + ItemKind::LeatherHelmet => 55, + ItemKind::LeatherLeggings => 75, + ItemKind::Mace => 500, + ItemKind::NetheriteAxe => 2031, + ItemKind::NetheriteBoots => 481, + ItemKind::NetheriteChestplate => 592, + ItemKind::NetheriteHelmet => 407, + ItemKind::NetheriteHoe => 2031, + ItemKind::NetheriteLeggings => 555, + ItemKind::NetheritePickaxe => 2031, + ItemKind::NetheriteShovel => 2031, + ItemKind::NetheriteSpear => 2031, + ItemKind::NetheriteSword => 2031, + ItemKind::Shears => 238, + ItemKind::Shield => 336, + ItemKind::StoneAxe => 131, + ItemKind::StoneHoe => 131, + ItemKind::StonePickaxe => 131, + ItemKind::StoneShovel => 131, + ItemKind::StoneSpear => 131, + ItemKind::StoneSword => 131, + ItemKind::Trident => 250, + ItemKind::TurtleHelmet => 275, + ItemKind::WarpedFungusOnAStick => 100, + ItemKind::WolfArmor => 64, + ItemKind::WoodenAxe => 59, + ItemKind::WoodenHoe => 59, + ItemKind::WoodenPickaxe => 59, + ItemKind::WoodenShovel => 59, + ItemKind::WoodenSpear => 59, + ItemKind::WoodenSword => 59, _ => return None, }; Some(MaxDamage { amount: value }) } } impl DefaultableComponent for Repairable { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::ChainmailBoots => HolderSet::Direct { + ItemKind::ChainmailBoots => HolderSet::Direct { contents: azalea_registry::tags::items::REPAIRS_CHAIN_ARMOR .clone() .into_iter() .collect(), }, - Item::ChainmailChestplate => HolderSet::Direct { + ItemKind::ChainmailChestplate => HolderSet::Direct { contents: azalea_registry::tags::items::REPAIRS_CHAIN_ARMOR .clone() .into_iter() .collect(), }, - Item::ChainmailHelmet => HolderSet::Direct { + ItemKind::ChainmailHelmet => HolderSet::Direct { contents: azalea_registry::tags::items::REPAIRS_CHAIN_ARMOR .clone() .into_iter() .collect(), }, - Item::ChainmailLeggings => HolderSet::Direct { + ItemKind::ChainmailLeggings => HolderSet::Direct { contents: azalea_registry::tags::items::REPAIRS_CHAIN_ARMOR .clone() .into_iter() .collect(), }, - Item::CopperAxe => HolderSet::Direct { + ItemKind::CopperAxe => HolderSet::Direct { contents: azalea_registry::tags::items::COPPER_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::CopperBoots => HolderSet::Direct { + ItemKind::CopperBoots => HolderSet::Direct { contents: azalea_registry::tags::items::REPAIRS_COPPER_ARMOR .clone() .into_iter() .collect(), }, - Item::CopperChestplate => HolderSet::Direct { + ItemKind::CopperChestplate => HolderSet::Direct { contents: azalea_registry::tags::items::REPAIRS_COPPER_ARMOR .clone() .into_iter() .collect(), }, - Item::CopperHelmet => HolderSet::Direct { + ItemKind::CopperHelmet => HolderSet::Direct { contents: azalea_registry::tags::items::REPAIRS_COPPER_ARMOR .clone() .into_iter() .collect(), }, - Item::CopperHoe => HolderSet::Direct { + ItemKind::CopperHoe => HolderSet::Direct { contents: azalea_registry::tags::items::COPPER_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::CopperLeggings => HolderSet::Direct { + ItemKind::CopperLeggings => HolderSet::Direct { contents: azalea_registry::tags::items::REPAIRS_COPPER_ARMOR .clone() .into_iter() .collect(), }, - Item::CopperPickaxe => HolderSet::Direct { + ItemKind::CopperPickaxe => HolderSet::Direct { contents: azalea_registry::tags::items::COPPER_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::CopperShovel => HolderSet::Direct { + ItemKind::CopperShovel => HolderSet::Direct { contents: azalea_registry::tags::items::COPPER_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::CopperSpear => HolderSet::Direct { + ItemKind::CopperSpear => HolderSet::Direct { contents: azalea_registry::tags::items::COPPER_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::CopperSword => HolderSet::Direct { + ItemKind::CopperSword => HolderSet::Direct { contents: azalea_registry::tags::items::COPPER_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::DiamondAxe => HolderSet::Direct { + ItemKind::DiamondAxe => HolderSet::Direct { contents: azalea_registry::tags::items::DIAMOND_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::DiamondBoots => HolderSet::Direct { + ItemKind::DiamondBoots => HolderSet::Direct { contents: azalea_registry::tags::items::REPAIRS_DIAMOND_ARMOR .clone() .into_iter() .collect(), }, - Item::DiamondChestplate => HolderSet::Direct { + ItemKind::DiamondChestplate => HolderSet::Direct { contents: azalea_registry::tags::items::REPAIRS_DIAMOND_ARMOR .clone() .into_iter() .collect(), }, - Item::DiamondHelmet => HolderSet::Direct { + ItemKind::DiamondHelmet => HolderSet::Direct { contents: azalea_registry::tags::items::REPAIRS_DIAMOND_ARMOR .clone() .into_iter() .collect(), }, - Item::DiamondHoe => HolderSet::Direct { + ItemKind::DiamondHoe => HolderSet::Direct { contents: azalea_registry::tags::items::DIAMOND_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::DiamondLeggings => HolderSet::Direct { + ItemKind::DiamondLeggings => HolderSet::Direct { contents: azalea_registry::tags::items::REPAIRS_DIAMOND_ARMOR .clone() .into_iter() .collect(), }, - Item::DiamondPickaxe => HolderSet::Direct { + ItemKind::DiamondPickaxe => HolderSet::Direct { contents: azalea_registry::tags::items::DIAMOND_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::DiamondShovel => HolderSet::Direct { + ItemKind::DiamondShovel => HolderSet::Direct { contents: azalea_registry::tags::items::DIAMOND_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::DiamondSpear => HolderSet::Direct { + ItemKind::DiamondSpear => HolderSet::Direct { contents: azalea_registry::tags::items::DIAMOND_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::DiamondSword => HolderSet::Direct { + ItemKind::DiamondSword => HolderSet::Direct { contents: azalea_registry::tags::items::DIAMOND_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::Elytra => HolderSet::Direct { - contents: vec![Item::PhantomMembrane], + ItemKind::Elytra => HolderSet::Direct { + contents: vec![ItemKind::PhantomMembrane], }, - Item::GoldenAxe => HolderSet::Direct { + ItemKind::GoldenAxe => HolderSet::Direct { contents: azalea_registry::tags::items::GOLD_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::GoldenBoots => HolderSet::Direct { + ItemKind::GoldenBoots => HolderSet::Direct { contents: azalea_registry::tags::items::REPAIRS_GOLD_ARMOR .clone() .into_iter() .collect(), }, - Item::GoldenChestplate => HolderSet::Direct { + ItemKind::GoldenChestplate => HolderSet::Direct { contents: azalea_registry::tags::items::REPAIRS_GOLD_ARMOR .clone() .into_iter() .collect(), }, - Item::GoldenHelmet => HolderSet::Direct { + ItemKind::GoldenHelmet => HolderSet::Direct { contents: azalea_registry::tags::items::REPAIRS_GOLD_ARMOR .clone() .into_iter() .collect(), }, - Item::GoldenHoe => HolderSet::Direct { + ItemKind::GoldenHoe => HolderSet::Direct { contents: azalea_registry::tags::items::GOLD_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::GoldenLeggings => HolderSet::Direct { + ItemKind::GoldenLeggings => HolderSet::Direct { contents: azalea_registry::tags::items::REPAIRS_GOLD_ARMOR .clone() .into_iter() .collect(), }, - Item::GoldenPickaxe => HolderSet::Direct { + ItemKind::GoldenPickaxe => HolderSet::Direct { contents: azalea_registry::tags::items::GOLD_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::GoldenShovel => HolderSet::Direct { + ItemKind::GoldenShovel => HolderSet::Direct { contents: azalea_registry::tags::items::GOLD_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::GoldenSpear => HolderSet::Direct { + ItemKind::GoldenSpear => HolderSet::Direct { contents: azalea_registry::tags::items::GOLD_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::GoldenSword => HolderSet::Direct { + ItemKind::GoldenSword => HolderSet::Direct { contents: azalea_registry::tags::items::GOLD_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::IronAxe => HolderSet::Direct { + ItemKind::IronAxe => HolderSet::Direct { contents: azalea_registry::tags::items::IRON_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::IronBoots => HolderSet::Direct { + ItemKind::IronBoots => HolderSet::Direct { contents: azalea_registry::tags::items::REPAIRS_IRON_ARMOR .clone() .into_iter() .collect(), }, - Item::IronChestplate => HolderSet::Direct { + ItemKind::IronChestplate => HolderSet::Direct { contents: azalea_registry::tags::items::REPAIRS_IRON_ARMOR .clone() .into_iter() .collect(), }, - Item::IronHelmet => HolderSet::Direct { + ItemKind::IronHelmet => HolderSet::Direct { contents: azalea_registry::tags::items::REPAIRS_IRON_ARMOR .clone() .into_iter() .collect(), }, - Item::IronHoe => HolderSet::Direct { + ItemKind::IronHoe => HolderSet::Direct { contents: azalea_registry::tags::items::IRON_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::IronLeggings => HolderSet::Direct { + ItemKind::IronLeggings => HolderSet::Direct { contents: azalea_registry::tags::items::REPAIRS_IRON_ARMOR .clone() .into_iter() .collect(), }, - Item::IronPickaxe => HolderSet::Direct { + ItemKind::IronPickaxe => HolderSet::Direct { contents: azalea_registry::tags::items::IRON_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::IronShovel => HolderSet::Direct { + ItemKind::IronShovel => HolderSet::Direct { contents: azalea_registry::tags::items::IRON_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::IronSpear => HolderSet::Direct { + ItemKind::IronSpear => HolderSet::Direct { contents: azalea_registry::tags::items::IRON_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::IronSword => HolderSet::Direct { + ItemKind::IronSword => HolderSet::Direct { contents: azalea_registry::tags::items::IRON_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::LeatherBoots => HolderSet::Direct { + ItemKind::LeatherBoots => HolderSet::Direct { contents: azalea_registry::tags::items::REPAIRS_LEATHER_ARMOR .clone() .into_iter() .collect(), }, - Item::LeatherChestplate => HolderSet::Direct { + ItemKind::LeatherChestplate => HolderSet::Direct { contents: azalea_registry::tags::items::REPAIRS_LEATHER_ARMOR .clone() .into_iter() .collect(), }, - Item::LeatherHelmet => HolderSet::Direct { + ItemKind::LeatherHelmet => HolderSet::Direct { contents: azalea_registry::tags::items::REPAIRS_LEATHER_ARMOR .clone() .into_iter() .collect(), }, - Item::LeatherLeggings => HolderSet::Direct { + ItemKind::LeatherLeggings => HolderSet::Direct { contents: azalea_registry::tags::items::REPAIRS_LEATHER_ARMOR .clone() .into_iter() .collect(), }, - Item::Mace => HolderSet::Direct { - contents: vec![Item::BreezeRod], + ItemKind::Mace => HolderSet::Direct { + contents: vec![ItemKind::BreezeRod], }, - Item::NetheriteAxe => HolderSet::Direct { + ItemKind::NetheriteAxe => HolderSet::Direct { contents: azalea_registry::tags::items::NETHERITE_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::NetheriteBoots => HolderSet::Direct { + ItemKind::NetheriteBoots => HolderSet::Direct { contents: azalea_registry::tags::items::REPAIRS_NETHERITE_ARMOR .clone() .into_iter() .collect(), }, - Item::NetheriteChestplate => HolderSet::Direct { + ItemKind::NetheriteChestplate => HolderSet::Direct { contents: azalea_registry::tags::items::REPAIRS_NETHERITE_ARMOR .clone() .into_iter() .collect(), }, - Item::NetheriteHelmet => HolderSet::Direct { + ItemKind::NetheriteHelmet => HolderSet::Direct { contents: azalea_registry::tags::items::REPAIRS_NETHERITE_ARMOR .clone() .into_iter() .collect(), }, - Item::NetheriteHoe => HolderSet::Direct { + ItemKind::NetheriteHoe => HolderSet::Direct { contents: azalea_registry::tags::items::NETHERITE_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::NetheriteLeggings => HolderSet::Direct { + ItemKind::NetheriteLeggings => HolderSet::Direct { contents: azalea_registry::tags::items::REPAIRS_NETHERITE_ARMOR .clone() .into_iter() .collect(), }, - Item::NetheritePickaxe => HolderSet::Direct { + ItemKind::NetheritePickaxe => HolderSet::Direct { contents: azalea_registry::tags::items::NETHERITE_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::NetheriteShovel => HolderSet::Direct { + ItemKind::NetheriteShovel => HolderSet::Direct { contents: azalea_registry::tags::items::NETHERITE_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::NetheriteSpear => HolderSet::Direct { + ItemKind::NetheriteSpear => HolderSet::Direct { contents: azalea_registry::tags::items::NETHERITE_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::NetheriteSword => HolderSet::Direct { + ItemKind::NetheriteSword => HolderSet::Direct { contents: azalea_registry::tags::items::NETHERITE_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::Shield => HolderSet::Direct { + ItemKind::Shield => HolderSet::Direct { contents: azalea_registry::tags::items::WOODEN_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::StoneAxe => HolderSet::Direct { + ItemKind::StoneAxe => HolderSet::Direct { contents: azalea_registry::tags::items::STONE_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::StoneHoe => HolderSet::Direct { + ItemKind::StoneHoe => HolderSet::Direct { contents: azalea_registry::tags::items::STONE_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::StonePickaxe => HolderSet::Direct { + ItemKind::StonePickaxe => HolderSet::Direct { contents: azalea_registry::tags::items::STONE_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::StoneShovel => HolderSet::Direct { + ItemKind::StoneShovel => HolderSet::Direct { contents: azalea_registry::tags::items::STONE_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::StoneSpear => HolderSet::Direct { + ItemKind::StoneSpear => HolderSet::Direct { contents: azalea_registry::tags::items::STONE_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::StoneSword => HolderSet::Direct { + ItemKind::StoneSword => HolderSet::Direct { contents: azalea_registry::tags::items::STONE_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::TurtleHelmet => HolderSet::Direct { + ItemKind::TurtleHelmet => HolderSet::Direct { contents: azalea_registry::tags::items::REPAIRS_TURTLE_HELMET .clone() .into_iter() .collect(), }, - Item::WolfArmor => HolderSet::Direct { + ItemKind::WolfArmor => HolderSet::Direct { contents: azalea_registry::tags::items::REPAIRS_WOLF_ARMOR .clone() .into_iter() .collect(), }, - Item::WoodenAxe => HolderSet::Direct { + ItemKind::WoodenAxe => HolderSet::Direct { contents: azalea_registry::tags::items::WOODEN_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::WoodenHoe => HolderSet::Direct { + ItemKind::WoodenHoe => HolderSet::Direct { contents: azalea_registry::tags::items::WOODEN_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::WoodenPickaxe => HolderSet::Direct { + ItemKind::WoodenPickaxe => HolderSet::Direct { contents: azalea_registry::tags::items::WOODEN_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::WoodenShovel => HolderSet::Direct { + ItemKind::WoodenShovel => HolderSet::Direct { contents: azalea_registry::tags::items::WOODEN_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::WoodenSpear => HolderSet::Direct { + ItemKind::WoodenSpear => HolderSet::Direct { contents: azalea_registry::tags::items::WOODEN_TOOL_MATERIALS .clone() .into_iter() .collect(), }, - Item::WoodenSword => HolderSet::Direct { + ItemKind::WoodenSword => HolderSet::Direct { contents: azalea_registry::tags::items::WOODEN_TOOL_MATERIALS .clone() .into_iter() @@ -4679,17 +4689,17 @@ impl DefaultableComponent for Repairable { } } impl DefaultableComponent for UseCooldown { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::ChorusFruit => UseCooldown { + ItemKind::ChorusFruit => UseCooldown { seconds: 1.0, ..UseCooldown::new() }, - Item::EnderPearl => UseCooldown { + ItemKind::EnderPearl => UseCooldown { seconds: 1.0, ..UseCooldown::new() }, - Item::WindCharge => UseCooldown { + ItemKind::WindCharge => UseCooldown { seconds: 0.5, ..UseCooldown::new() }, @@ -4699,9 +4709,9 @@ impl DefaultableComponent for UseCooldown { } } impl DefaultableComponent for Tool { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::CopperAxe => Tool { + ItemKind::CopperAxe => Tool { rules: vec![ ToolRule { blocks: HolderSet::Direct { @@ -4726,7 +4736,7 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::CopperHoe => Tool { + ItemKind::CopperHoe => Tool { rules: vec![ ToolRule { blocks: HolderSet::Direct { @@ -4751,7 +4761,7 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::CopperPickaxe => Tool { + ItemKind::CopperPickaxe => Tool { rules: vec![ ToolRule { blocks: HolderSet::Direct { @@ -4776,7 +4786,7 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::CopperShovel => Tool { + ItemKind::CopperShovel => Tool { rules: vec![ ToolRule { blocks: HolderSet::Direct { @@ -4801,13 +4811,13 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::CopperSword => Tool { + ItemKind::CopperSword => Tool { can_destroy_blocks_in_creative: false, damage_per_block: 2, rules: vec![ ToolRule { blocks: HolderSet::Direct { - contents: vec![Block::Cobweb], + contents: vec![BlockKind::Cobweb], }, correct_for_drops: Some(true), speed: Some(15.0), @@ -4835,7 +4845,7 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::DiamondAxe => Tool { + ItemKind::DiamondAxe => Tool { rules: vec![ ToolRule { blocks: HolderSet::Direct { @@ -4860,7 +4870,7 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::DiamondHoe => Tool { + ItemKind::DiamondHoe => Tool { rules: vec![ ToolRule { blocks: HolderSet::Direct { @@ -4885,7 +4895,7 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::DiamondPickaxe => Tool { + ItemKind::DiamondPickaxe => Tool { rules: vec![ ToolRule { blocks: HolderSet::Direct { @@ -4910,7 +4920,7 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::DiamondShovel => Tool { + ItemKind::DiamondShovel => Tool { rules: vec![ ToolRule { blocks: HolderSet::Direct { @@ -4935,13 +4945,13 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::DiamondSword => Tool { + ItemKind::DiamondSword => Tool { can_destroy_blocks_in_creative: false, damage_per_block: 2, rules: vec![ ToolRule { blocks: HolderSet::Direct { - contents: vec![Block::Cobweb], + contents: vec![BlockKind::Cobweb], }, correct_for_drops: Some(true), speed: Some(15.0), @@ -4969,7 +4979,7 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::GoldenAxe => Tool { + ItemKind::GoldenAxe => Tool { rules: vec![ ToolRule { blocks: HolderSet::Direct { @@ -4994,7 +5004,7 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::GoldenHoe => Tool { + ItemKind::GoldenHoe => Tool { rules: vec![ ToolRule { blocks: HolderSet::Direct { @@ -5019,7 +5029,7 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::GoldenPickaxe => Tool { + ItemKind::GoldenPickaxe => Tool { rules: vec![ ToolRule { blocks: HolderSet::Direct { @@ -5044,7 +5054,7 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::GoldenShovel => Tool { + ItemKind::GoldenShovel => Tool { rules: vec![ ToolRule { blocks: HolderSet::Direct { @@ -5069,13 +5079,13 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::GoldenSword => Tool { + ItemKind::GoldenSword => Tool { can_destroy_blocks_in_creative: false, damage_per_block: 2, rules: vec![ ToolRule { blocks: HolderSet::Direct { - contents: vec![Block::Cobweb], + contents: vec![BlockKind::Cobweb], }, correct_for_drops: Some(true), speed: Some(15.0), @@ -5103,7 +5113,7 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::IronAxe => Tool { + ItemKind::IronAxe => Tool { rules: vec![ ToolRule { blocks: HolderSet::Direct { @@ -5128,7 +5138,7 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::IronHoe => Tool { + ItemKind::IronHoe => Tool { rules: vec![ ToolRule { blocks: HolderSet::Direct { @@ -5153,7 +5163,7 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::IronPickaxe => Tool { + ItemKind::IronPickaxe => Tool { rules: vec![ ToolRule { blocks: HolderSet::Direct { @@ -5178,7 +5188,7 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::IronShovel => Tool { + ItemKind::IronShovel => Tool { rules: vec![ ToolRule { blocks: HolderSet::Direct { @@ -5203,13 +5213,13 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::IronSword => Tool { + ItemKind::IronSword => Tool { can_destroy_blocks_in_creative: false, damage_per_block: 2, rules: vec![ ToolRule { blocks: HolderSet::Direct { - contents: vec![Block::Cobweb], + contents: vec![BlockKind::Cobweb], }, correct_for_drops: Some(true), speed: Some(15.0), @@ -5237,13 +5247,13 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::Mace => Tool { + ItemKind::Mace => Tool { can_destroy_blocks_in_creative: false, damage_per_block: 2, rules: vec![], ..Tool::new() }, - Item::NetheriteAxe => Tool { + ItemKind::NetheriteAxe => Tool { rules: vec![ ToolRule { blocks: HolderSet::Direct { @@ -5268,7 +5278,7 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::NetheriteHoe => Tool { + ItemKind::NetheriteHoe => Tool { rules: vec![ ToolRule { blocks: HolderSet::Direct { @@ -5293,7 +5303,7 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::NetheritePickaxe => Tool { + ItemKind::NetheritePickaxe => Tool { rules: vec![ ToolRule { blocks: HolderSet::Direct { @@ -5318,7 +5328,7 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::NetheriteShovel => Tool { + ItemKind::NetheriteShovel => Tool { rules: vec![ ToolRule { blocks: HolderSet::Direct { @@ -5343,13 +5353,13 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::NetheriteSword => Tool { + ItemKind::NetheriteSword => Tool { can_destroy_blocks_in_creative: false, damage_per_block: 2, rules: vec![ ToolRule { blocks: HolderSet::Direct { - contents: vec![Block::Cobweb], + contents: vec![BlockKind::Cobweb], }, correct_for_drops: Some(true), speed: Some(15.0), @@ -5377,11 +5387,11 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::Shears => Tool { + ItemKind::Shears => Tool { rules: vec![ ToolRule { blocks: HolderSet::Direct { - contents: vec![Block::Cobweb], + contents: vec![BlockKind::Cobweb], }, correct_for_drops: Some(true), speed: Some(15.0), @@ -5408,7 +5418,7 @@ impl DefaultableComponent for Tool { }, ToolRule { blocks: HolderSet::Direct { - contents: vec![Block::Vine, Block::GlowLichen], + contents: vec![BlockKind::Vine, BlockKind::GlowLichen], }, speed: Some(2.0), ..ToolRule::new() @@ -5416,7 +5426,7 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::StoneAxe => Tool { + ItemKind::StoneAxe => Tool { rules: vec![ ToolRule { blocks: HolderSet::Direct { @@ -5441,7 +5451,7 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::StoneHoe => Tool { + ItemKind::StoneHoe => Tool { rules: vec![ ToolRule { blocks: HolderSet::Direct { @@ -5466,7 +5476,7 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::StonePickaxe => Tool { + ItemKind::StonePickaxe => Tool { rules: vec![ ToolRule { blocks: HolderSet::Direct { @@ -5491,7 +5501,7 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::StoneShovel => Tool { + ItemKind::StoneShovel => Tool { rules: vec![ ToolRule { blocks: HolderSet::Direct { @@ -5516,13 +5526,13 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::StoneSword => Tool { + ItemKind::StoneSword => Tool { can_destroy_blocks_in_creative: false, damage_per_block: 2, rules: vec![ ToolRule { blocks: HolderSet::Direct { - contents: vec![Block::Cobweb], + contents: vec![BlockKind::Cobweb], }, correct_for_drops: Some(true), speed: Some(15.0), @@ -5550,13 +5560,13 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::Trident => Tool { + ItemKind::Trident => Tool { can_destroy_blocks_in_creative: false, damage_per_block: 2, rules: vec![], ..Tool::new() }, - Item::WoodenAxe => Tool { + ItemKind::WoodenAxe => Tool { rules: vec![ ToolRule { blocks: HolderSet::Direct { @@ -5581,7 +5591,7 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::WoodenHoe => Tool { + ItemKind::WoodenHoe => Tool { rules: vec![ ToolRule { blocks: HolderSet::Direct { @@ -5606,7 +5616,7 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::WoodenPickaxe => Tool { + ItemKind::WoodenPickaxe => Tool { rules: vec![ ToolRule { blocks: HolderSet::Direct { @@ -5631,7 +5641,7 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::WoodenShovel => Tool { + ItemKind::WoodenShovel => Tool { rules: vec![ ToolRule { blocks: HolderSet::Direct { @@ -5656,13 +5666,13 @@ impl DefaultableComponent for Tool { ], ..Tool::new() }, - Item::WoodenSword => Tool { + ItemKind::WoodenSword => Tool { can_destroy_blocks_in_creative: false, damage_per_block: 2, rules: vec![ ToolRule { blocks: HolderSet::Direct { - contents: vec![Block::Cobweb], + contents: vec![BlockKind::Cobweb], }, correct_for_drops: Some(true), speed: Some(15.0), @@ -5696,145 +5706,145 @@ impl DefaultableComponent for Tool { } } impl DefaultableComponent for Weapon { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::CopperAxe => Weapon { + ItemKind::CopperAxe => Weapon { disable_blocking_for_seconds: 5.0, item_damage_per_attack: 2, }, - Item::CopperHoe => Weapon { + ItemKind::CopperHoe => Weapon { item_damage_per_attack: 2, ..Weapon::new() }, - Item::CopperPickaxe => Weapon { + ItemKind::CopperPickaxe => Weapon { item_damage_per_attack: 2, ..Weapon::new() }, - Item::CopperShovel => Weapon { + ItemKind::CopperShovel => Weapon { item_damage_per_attack: 2, ..Weapon::new() }, - Item::CopperSpear => Weapon::new(), - Item::CopperSword => Weapon::new(), - Item::DiamondAxe => Weapon { + ItemKind::CopperSpear => Weapon::new(), + ItemKind::CopperSword => Weapon::new(), + ItemKind::DiamondAxe => Weapon { disable_blocking_for_seconds: 5.0, item_damage_per_attack: 2, }, - Item::DiamondHoe => Weapon { + ItemKind::DiamondHoe => Weapon { item_damage_per_attack: 2, ..Weapon::new() }, - Item::DiamondPickaxe => Weapon { + ItemKind::DiamondPickaxe => Weapon { item_damage_per_attack: 2, ..Weapon::new() }, - Item::DiamondShovel => Weapon { + ItemKind::DiamondShovel => Weapon { item_damage_per_attack: 2, ..Weapon::new() }, - Item::DiamondSpear => Weapon::new(), - Item::DiamondSword => Weapon::new(), - Item::GoldenAxe => Weapon { + ItemKind::DiamondSpear => Weapon::new(), + ItemKind::DiamondSword => Weapon::new(), + ItemKind::GoldenAxe => Weapon { disable_blocking_for_seconds: 5.0, item_damage_per_attack: 2, }, - Item::GoldenHoe => Weapon { + ItemKind::GoldenHoe => Weapon { item_damage_per_attack: 2, ..Weapon::new() }, - Item::GoldenPickaxe => Weapon { + ItemKind::GoldenPickaxe => Weapon { item_damage_per_attack: 2, ..Weapon::new() }, - Item::GoldenShovel => Weapon { + ItemKind::GoldenShovel => Weapon { item_damage_per_attack: 2, ..Weapon::new() }, - Item::GoldenSpear => Weapon::new(), - Item::GoldenSword => Weapon::new(), - Item::IronAxe => Weapon { + ItemKind::GoldenSpear => Weapon::new(), + ItemKind::GoldenSword => Weapon::new(), + ItemKind::IronAxe => Weapon { disable_blocking_for_seconds: 5.0, item_damage_per_attack: 2, }, - Item::IronHoe => Weapon { + ItemKind::IronHoe => Weapon { item_damage_per_attack: 2, ..Weapon::new() }, - Item::IronPickaxe => Weapon { + ItemKind::IronPickaxe => Weapon { item_damage_per_attack: 2, ..Weapon::new() }, - Item::IronShovel => Weapon { + ItemKind::IronShovel => Weapon { item_damage_per_attack: 2, ..Weapon::new() }, - Item::IronSpear => Weapon::new(), - Item::IronSword => Weapon::new(), - Item::Mace => Weapon::new(), - Item::NetheriteAxe => Weapon { + ItemKind::IronSpear => Weapon::new(), + ItemKind::IronSword => Weapon::new(), + ItemKind::Mace => Weapon::new(), + ItemKind::NetheriteAxe => Weapon { disable_blocking_for_seconds: 5.0, item_damage_per_attack: 2, }, - Item::NetheriteHoe => Weapon { + ItemKind::NetheriteHoe => Weapon { item_damage_per_attack: 2, ..Weapon::new() }, - Item::NetheritePickaxe => Weapon { + ItemKind::NetheritePickaxe => Weapon { item_damage_per_attack: 2, ..Weapon::new() }, - Item::NetheriteShovel => Weapon { + ItemKind::NetheriteShovel => Weapon { item_damage_per_attack: 2, ..Weapon::new() }, - Item::NetheriteSpear => Weapon::new(), - Item::NetheriteSword => Weapon::new(), - Item::StoneAxe => Weapon { + ItemKind::NetheriteSpear => Weapon::new(), + ItemKind::NetheriteSword => Weapon::new(), + ItemKind::StoneAxe => Weapon { disable_blocking_for_seconds: 5.0, item_damage_per_attack: 2, }, - Item::StoneHoe => Weapon { + ItemKind::StoneHoe => Weapon { item_damage_per_attack: 2, ..Weapon::new() }, - Item::StonePickaxe => Weapon { + ItemKind::StonePickaxe => Weapon { item_damage_per_attack: 2, ..Weapon::new() }, - Item::StoneShovel => Weapon { + ItemKind::StoneShovel => Weapon { item_damage_per_attack: 2, ..Weapon::new() }, - Item::StoneSpear => Weapon::new(), - Item::StoneSword => Weapon::new(), - Item::Trident => Weapon::new(), - Item::WoodenAxe => Weapon { + ItemKind::StoneSpear => Weapon::new(), + ItemKind::StoneSword => Weapon::new(), + ItemKind::Trident => Weapon::new(), + ItemKind::WoodenAxe => Weapon { disable_blocking_for_seconds: 5.0, item_damage_per_attack: 2, }, - Item::WoodenHoe => Weapon { + ItemKind::WoodenHoe => Weapon { item_damage_per_attack: 2, ..Weapon::new() }, - Item::WoodenPickaxe => Weapon { + ItemKind::WoodenPickaxe => Weapon { item_damage_per_attack: 2, ..Weapon::new() }, - Item::WoodenShovel => Weapon { + ItemKind::WoodenShovel => Weapon { item_damage_per_attack: 2, ..Weapon::new() }, - Item::WoodenSpear => Weapon::new(), - Item::WoodenSword => Weapon::new(), + ItemKind::WoodenSpear => Weapon::new(), + ItemKind::WoodenSword => Weapon::new(), _ => return None, }; Some(value) } } impl DefaultableComponent for AttackRange { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::CopperSpear => AttackRange { + ItemKind::CopperSpear => AttackRange { hitbox_margin: 0.125, max_creative_reach: 6.5, max_reach: 4.5, @@ -5842,7 +5852,7 @@ impl DefaultableComponent for AttackRange { min_reach: 2.0, mob_factor: 0.5, }, - Item::DiamondSpear => AttackRange { + ItemKind::DiamondSpear => AttackRange { hitbox_margin: 0.125, max_creative_reach: 6.5, max_reach: 4.5, @@ -5850,7 +5860,7 @@ impl DefaultableComponent for AttackRange { min_reach: 2.0, mob_factor: 0.5, }, - Item::GoldenSpear => AttackRange { + ItemKind::GoldenSpear => AttackRange { hitbox_margin: 0.125, max_creative_reach: 6.5, max_reach: 4.5, @@ -5858,7 +5868,7 @@ impl DefaultableComponent for AttackRange { min_reach: 2.0, mob_factor: 0.5, }, - Item::IronSpear => AttackRange { + ItemKind::IronSpear => AttackRange { hitbox_margin: 0.125, max_creative_reach: 6.5, max_reach: 4.5, @@ -5866,7 +5876,7 @@ impl DefaultableComponent for AttackRange { min_reach: 2.0, mob_factor: 0.5, }, - Item::NetheriteSpear => AttackRange { + ItemKind::NetheriteSpear => AttackRange { hitbox_margin: 0.125, max_creative_reach: 6.5, max_reach: 4.5, @@ -5874,7 +5884,7 @@ impl DefaultableComponent for AttackRange { min_reach: 2.0, mob_factor: 0.5, }, - Item::StoneSpear => AttackRange { + ItemKind::StoneSpear => AttackRange { hitbox_margin: 0.125, max_creative_reach: 6.5, max_reach: 4.5, @@ -5882,7 +5892,7 @@ impl DefaultableComponent for AttackRange { min_reach: 2.0, mob_factor: 0.5, }, - Item::WoodenSpear => AttackRange { + ItemKind::WoodenSpear => AttackRange { hitbox_margin: 0.125, max_creative_reach: 6.5, max_reach: 4.5, @@ -5896,24 +5906,38 @@ impl DefaultableComponent for AttackRange { } } impl DefaultableComponent for DamageType { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::CopperSpear => DamageType::Registry(azalea_registry::DamageKind::new_raw(0)), - Item::DiamondSpear => DamageType::Registry(azalea_registry::DamageKind::new_raw(0)), - Item::GoldenSpear => DamageType::Registry(azalea_registry::DamageKind::new_raw(0)), - Item::IronSpear => DamageType::Registry(azalea_registry::DamageKind::new_raw(0)), - Item::NetheriteSpear => DamageType::Registry(azalea_registry::DamageKind::new_raw(0)), - Item::StoneSpear => DamageType::Registry(azalea_registry::DamageKind::new_raw(0)), - Item::WoodenSpear => DamageType::Registry(azalea_registry::DamageKind::new_raw(0)), + ItemKind::CopperSpear => { + DamageType::Registry(azalea_registry::data::DamageKind::new_raw(0)) + } + ItemKind::DiamondSpear => { + DamageType::Registry(azalea_registry::data::DamageKind::new_raw(0)) + } + ItemKind::GoldenSpear => { + DamageType::Registry(azalea_registry::data::DamageKind::new_raw(0)) + } + ItemKind::IronSpear => { + DamageType::Registry(azalea_registry::data::DamageKind::new_raw(0)) + } + ItemKind::NetheriteSpear => { + DamageType::Registry(azalea_registry::data::DamageKind::new_raw(0)) + } + ItemKind::StoneSpear => { + DamageType::Registry(azalea_registry::data::DamageKind::new_raw(0)) + } + ItemKind::WoodenSpear => { + DamageType::Registry(azalea_registry::data::DamageKind::new_raw(0)) + } _ => return None, }; Some(value) } } impl DefaultableComponent for KineticWeapon { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::CopperSpear => KineticWeapon { + ItemKind::CopperSpear => KineticWeapon { damage_conditions: Some(KineticWeaponCondition { max_duration_ticks: 250, min_relative_speed: 4.6, @@ -5936,7 +5960,7 @@ impl DefaultableComponent for KineticWeapon { sound: Some(azalea_registry::Holder::Reference(SoundEvent::ItemSpearUse)), ..KineticWeapon::new() }, - Item::DiamondSpear => KineticWeapon { + ItemKind::DiamondSpear => KineticWeapon { damage_conditions: Some(KineticWeaponCondition { max_duration_ticks: 200, min_relative_speed: 4.6, @@ -5959,7 +5983,7 @@ impl DefaultableComponent for KineticWeapon { sound: Some(azalea_registry::Holder::Reference(SoundEvent::ItemSpearUse)), ..KineticWeapon::new() }, - Item::GoldenSpear => KineticWeapon { + ItemKind::GoldenSpear => KineticWeapon { damage_conditions: Some(KineticWeaponCondition { max_duration_ticks: 275, min_relative_speed: 4.6, @@ -5982,7 +6006,7 @@ impl DefaultableComponent for KineticWeapon { sound: Some(azalea_registry::Holder::Reference(SoundEvent::ItemSpearUse)), ..KineticWeapon::new() }, - Item::IronSpear => KineticWeapon { + ItemKind::IronSpear => KineticWeapon { damage_conditions: Some(KineticWeaponCondition { max_duration_ticks: 225, min_relative_speed: 4.6, @@ -6005,7 +6029,7 @@ impl DefaultableComponent for KineticWeapon { sound: Some(azalea_registry::Holder::Reference(SoundEvent::ItemSpearUse)), ..KineticWeapon::new() }, - Item::NetheriteSpear => KineticWeapon { + ItemKind::NetheriteSpear => KineticWeapon { damage_conditions: Some(KineticWeaponCondition { max_duration_ticks: 175, min_relative_speed: 4.6, @@ -6028,7 +6052,7 @@ impl DefaultableComponent for KineticWeapon { sound: Some(azalea_registry::Holder::Reference(SoundEvent::ItemSpearUse)), ..KineticWeapon::new() }, - Item::StoneSpear => KineticWeapon { + ItemKind::StoneSpear => KineticWeapon { damage_conditions: Some(KineticWeaponCondition { max_duration_ticks: 275, min_relative_speed: 4.6, @@ -6051,7 +6075,7 @@ impl DefaultableComponent for KineticWeapon { sound: Some(azalea_registry::Holder::Reference(SoundEvent::ItemSpearUse)), ..KineticWeapon::new() }, - Item::WoodenSpear => KineticWeapon { + ItemKind::WoodenSpear => KineticWeapon { damage_conditions: Some(KineticWeaponCondition { max_duration_ticks: 300, min_relative_speed: 4.6, @@ -6084,66 +6108,66 @@ impl DefaultableComponent for KineticWeapon { } } impl DefaultableComponent for MinimumAttackCharge { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::CopperSpear => 1.0, - Item::DiamondSpear => 1.0, - Item::GoldenSpear => 1.0, - Item::IronSpear => 1.0, - Item::NetheriteSpear => 1.0, - Item::StoneSpear => 1.0, - Item::WoodenSpear => 1.0, + ItemKind::CopperSpear => 1.0, + ItemKind::DiamondSpear => 1.0, + ItemKind::GoldenSpear => 1.0, + ItemKind::IronSpear => 1.0, + ItemKind::NetheriteSpear => 1.0, + ItemKind::StoneSpear => 1.0, + ItemKind::WoodenSpear => 1.0, _ => return None, }; Some(MinimumAttackCharge { value: value }) } } impl DefaultableComponent for PiercingWeapon { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::CopperSpear => PiercingWeapon { + ItemKind::CopperSpear => PiercingWeapon { hit_sound: Some(azalea_registry::Holder::Reference(SoundEvent::ItemSpearHit)), sound: Some(azalea_registry::Holder::Reference( SoundEvent::ItemSpearAttack, )), ..PiercingWeapon::new() }, - Item::DiamondSpear => PiercingWeapon { + ItemKind::DiamondSpear => PiercingWeapon { hit_sound: Some(azalea_registry::Holder::Reference(SoundEvent::ItemSpearHit)), sound: Some(azalea_registry::Holder::Reference( SoundEvent::ItemSpearAttack, )), ..PiercingWeapon::new() }, - Item::GoldenSpear => PiercingWeapon { + ItemKind::GoldenSpear => PiercingWeapon { hit_sound: Some(azalea_registry::Holder::Reference(SoundEvent::ItemSpearHit)), sound: Some(azalea_registry::Holder::Reference( SoundEvent::ItemSpearAttack, )), ..PiercingWeapon::new() }, - Item::IronSpear => PiercingWeapon { + ItemKind::IronSpear => PiercingWeapon { hit_sound: Some(azalea_registry::Holder::Reference(SoundEvent::ItemSpearHit)), sound: Some(azalea_registry::Holder::Reference( SoundEvent::ItemSpearAttack, )), ..PiercingWeapon::new() }, - Item::NetheriteSpear => PiercingWeapon { + ItemKind::NetheriteSpear => PiercingWeapon { hit_sound: Some(azalea_registry::Holder::Reference(SoundEvent::ItemSpearHit)), sound: Some(azalea_registry::Holder::Reference( SoundEvent::ItemSpearAttack, )), ..PiercingWeapon::new() }, - Item::StoneSpear => PiercingWeapon { + ItemKind::StoneSpear => PiercingWeapon { hit_sound: Some(azalea_registry::Holder::Reference(SoundEvent::ItemSpearHit)), sound: Some(azalea_registry::Holder::Reference( SoundEvent::ItemSpearAttack, )), ..PiercingWeapon::new() }, - Item::WoodenSpear => PiercingWeapon { + ItemKind::WoodenSpear => PiercingWeapon { hit_sound: Some(azalea_registry::Holder::Reference( SoundEvent::ItemSpearWoodHit, )), @@ -6158,60 +6182,65 @@ impl DefaultableComponent for PiercingWeapon { } } impl DefaultableComponent for ChargedProjectiles { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::Crossbow => vec![], + ItemKind::Crossbow => vec![], _ => return None, }; Some(ChargedProjectiles { items: value }) } } impl DefaultableComponent for DebugStickState { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::DebugStick => NbtCompound::from_values(vec![]), + ItemKind::DebugStick => NbtCompound::from_values(vec![]), _ => return None, }; Some(DebugStickState { properties: value }) } } impl DefaultableComponent for EnchantmentGlintOverride { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::DebugStick => true, - Item::EnchantedBook => true, - Item::EnchantedGoldenApple => true, - Item::EndCrystal => true, - Item::ExperienceBottle => true, - Item::NetherStar => true, - Item::WrittenBook => true, + ItemKind::DebugStick => true, + ItemKind::EnchantedBook => true, + ItemKind::EnchantedGoldenApple => true, + ItemKind::EndCrystal => true, + ItemKind::ExperienceBottle => true, + ItemKind::NetherStar => true, + ItemKind::WrittenBook => true, _ => return None, }; Some(EnchantmentGlintOverride { show_glint: value }) } } impl DefaultableComponent for PotDecorations { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::DecoratedPot => vec![Item::Brick, Item::Brick, Item::Brick, Item::Brick], + ItemKind::DecoratedPot => vec![ + ItemKind::Brick, + ItemKind::Brick, + ItemKind::Brick, + ItemKind::Brick, + ], _ => return None, }; Some(PotDecorations { items: value }) } } impl DefaultableComponent for Glider { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::Elytra => Glider, + ItemKind::Elytra => Glider, _ => return None, }; Some(value) } } impl DefaultableComponent for StoredEnchantments { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::EnchantedBook => HashMap::from_iter([]), + ItemKind::EnchantedBook => HashMap::from_iter([]), _ => return None, }; Some(StoredEnchantments { @@ -6220,27 +6249,27 @@ impl DefaultableComponent for StoredEnchantments { } } impl DefaultableComponent for MapColor { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::FilledMap => 4603950, + ItemKind::FilledMap => 4603950, _ => return None, }; Some(MapColor { color: value }) } } impl DefaultableComponent for MapDecorations { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::FilledMap => NbtCompound::from_values(vec![]), + ItemKind::FilledMap => NbtCompound::from_values(vec![]), _ => return None, }; Some(MapDecorations { decorations: value }) } } impl DefaultableComponent for Fireworks { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::FireworkRocket => Fireworks { + ItemKind::FireworkRocket => Fireworks { flight_duration: 1, ..Fireworks::new() }, @@ -6250,91 +6279,95 @@ impl DefaultableComponent for Fireworks { } } impl DefaultableComponent for Instrument { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::GoatHorn => Instrument::Registry(azalea_registry::Instrument::PonderGoatHorn), + ItemKind::GoatHorn => Instrument::Registry(data::Instrument::new_raw(0)), _ => return None, }; Some(value) } } impl DefaultableComponent for Recipes { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::KnowledgeBook => vec![], + ItemKind::KnowledgeBook => vec![], _ => return None, }; Some(Recipes { recipes: value }) } } impl DefaultableComponent for PotionContents { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::LingeringPotion => PotionContents::new(), - Item::Potion => PotionContents::new(), - Item::SplashPotion => PotionContents::new(), - Item::TippedArrow => PotionContents::new(), + ItemKind::LingeringPotion => PotionContents::new(), + ItemKind::Potion => PotionContents::new(), + ItemKind::SplashPotion => PotionContents::new(), + ItemKind::TippedArrow => PotionContents::new(), _ => return None, }; Some(value) } } impl DefaultableComponent for PotionDurationScale { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::LingeringPotion => 0.25, - Item::TippedArrow => 0.125, + ItemKind::LingeringPotion => 0.25, + ItemKind::TippedArrow => 0.125, _ => return None, }; Some(PotionDurationScale { value: value }) } } impl DefaultableComponent for JukeboxPlayable { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::MusicDisc11 => JukeboxPlayable::Referenced("minecraft:11".into()), - Item::MusicDisc13 => JukeboxPlayable::Referenced("minecraft:13".into()), - Item::MusicDisc5 => JukeboxPlayable::Referenced("minecraft:5".into()), - Item::MusicDiscBlocks => JukeboxPlayable::Referenced("minecraft:blocks".into()), - Item::MusicDiscCat => JukeboxPlayable::Referenced("minecraft:cat".into()), - Item::MusicDiscChirp => JukeboxPlayable::Referenced("minecraft:chirp".into()), - Item::MusicDiscCreator => JukeboxPlayable::Referenced("minecraft:creator".into()), - Item::MusicDiscCreatorMusicBox => { + ItemKind::MusicDisc11 => JukeboxPlayable::Referenced("minecraft:11".into()), + ItemKind::MusicDisc13 => JukeboxPlayable::Referenced("minecraft:13".into()), + ItemKind::MusicDisc5 => JukeboxPlayable::Referenced("minecraft:5".into()), + ItemKind::MusicDiscBlocks => JukeboxPlayable::Referenced("minecraft:blocks".into()), + ItemKind::MusicDiscCat => JukeboxPlayable::Referenced("minecraft:cat".into()), + ItemKind::MusicDiscChirp => JukeboxPlayable::Referenced("minecraft:chirp".into()), + ItemKind::MusicDiscCreator => JukeboxPlayable::Referenced("minecraft:creator".into()), + ItemKind::MusicDiscCreatorMusicBox => { JukeboxPlayable::Referenced("minecraft:creator_music_box".into()) } - Item::MusicDiscFar => JukeboxPlayable::Referenced("minecraft:far".into()), - Item::MusicDiscLavaChicken => { + ItemKind::MusicDiscFar => JukeboxPlayable::Referenced("minecraft:far".into()), + ItemKind::MusicDiscLavaChicken => { JukeboxPlayable::Referenced("minecraft:lava_chicken".into()) } - Item::MusicDiscMall => JukeboxPlayable::Referenced("minecraft:mall".into()), - Item::MusicDiscMellohi => JukeboxPlayable::Referenced("minecraft:mellohi".into()), - Item::MusicDiscOtherside => JukeboxPlayable::Referenced("minecraft:otherside".into()), - Item::MusicDiscPigstep => JukeboxPlayable::Referenced("minecraft:pigstep".into()), - Item::MusicDiscPrecipice => JukeboxPlayable::Referenced("minecraft:precipice".into()), - Item::MusicDiscRelic => JukeboxPlayable::Referenced("minecraft:relic".into()), - Item::MusicDiscStal => JukeboxPlayable::Referenced("minecraft:stal".into()), - Item::MusicDiscStrad => JukeboxPlayable::Referenced("minecraft:strad".into()), - Item::MusicDiscTears => JukeboxPlayable::Referenced("minecraft:tears".into()), - Item::MusicDiscWait => JukeboxPlayable::Referenced("minecraft:wait".into()), - Item::MusicDiscWard => JukeboxPlayable::Referenced("minecraft:ward".into()), + ItemKind::MusicDiscMall => JukeboxPlayable::Referenced("minecraft:mall".into()), + ItemKind::MusicDiscMellohi => JukeboxPlayable::Referenced("minecraft:mellohi".into()), + ItemKind::MusicDiscOtherside => { + JukeboxPlayable::Referenced("minecraft:otherside".into()) + } + ItemKind::MusicDiscPigstep => JukeboxPlayable::Referenced("minecraft:pigstep".into()), + ItemKind::MusicDiscPrecipice => { + JukeboxPlayable::Referenced("minecraft:precipice".into()) + } + ItemKind::MusicDiscRelic => JukeboxPlayable::Referenced("minecraft:relic".into()), + ItemKind::MusicDiscStal => JukeboxPlayable::Referenced("minecraft:stal".into()), + ItemKind::MusicDiscStrad => JukeboxPlayable::Referenced("minecraft:strad".into()), + ItemKind::MusicDiscTears => JukeboxPlayable::Referenced("minecraft:tears".into()), + ItemKind::MusicDiscWait => JukeboxPlayable::Referenced("minecraft:wait".into()), + ItemKind::MusicDiscWard => JukeboxPlayable::Referenced("minecraft:ward".into()), _ => return None, }; Some(value) } } impl DefaultableComponent for OminousBottleAmplifier { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::OminousBottle => 0, + ItemKind::OminousBottle => 0, _ => return None, }; Some(OminousBottleAmplifier { amplifier: value }) } } impl DefaultableComponent for BlocksAttacks { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::Shield => BlocksAttacks { + ItemKind::Shield => BlocksAttacks { block_delay_seconds: 0.25, block_sound: Some(azalea_registry::Holder::Reference( SoundEvent::ItemShieldBlock, @@ -6356,18 +6389,18 @@ impl DefaultableComponent for BlocksAttacks { } } impl DefaultableComponent for SuspiciousStewEffects { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::SuspiciousStew => vec![], + ItemKind::SuspiciousStew => vec![], _ => return None, }; Some(SuspiciousStewEffects { effects: value }) } } impl DefaultableComponent for DeathProtection { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::TotemOfUndying => vec![ + ItemKind::TotemOfUndying => vec![ ConsumeEffect::ClearAllEffects {}, ConsumeEffect::ApplyEffects { effects: vec![ @@ -6409,9 +6442,9 @@ impl DefaultableComponent for DeathProtection { } } impl DefaultableComponent for WritableBookContent { - fn default_for_item(item: Item) -> Option<Self> { + fn default_for_item(item: ItemKind) -> Option<Self> { let value = match item { - Item::WritableBook => Vec::new(), + ItemKind::WritableBook => Vec::new(), _ => return None, }; Some(WritableBookContent { pages: value }) diff --git a/azalea-inventory/src/default_components/mod.rs b/azalea-inventory/src/default_components/mod.rs index 74b7248e..2cc96d51 100644 --- a/azalea-inventory/src/default_components/mod.rs +++ b/azalea-inventory/src/default_components/mod.rs @@ -1,21 +1,21 @@ pub mod generated; -use azalea_registry::Item; +use azalea_registry::builtin::ItemKind; use crate::components::DataComponentTrait; -/// A trait for data components that some [`Item`]s may have a default value +/// A trait for data components that some [`ItemKind`]s may have a default value /// for. pub trait DefaultableComponent: DataComponentTrait { - fn default_for_item(item: Item) -> Option<Self> + fn default_for_item(item: ItemKind) -> Option<Self> where Self: Sized; } impl<T: DataComponentTrait> DefaultableComponent for T { - default fn default_for_item(_item: Item) -> Option<Self> { + default fn default_for_item(_item: ItemKind) -> Option<Self> { None } } -pub fn get_default_component<T: DefaultableComponent>(item: Item) -> Option<T> { +pub fn get_default_component<T: DefaultableComponent>(item: ItemKind) -> Option<T> { T::default_for_item(item) } |
