aboutsummaryrefslogtreecommitdiff
path: root/azalea-registry/src
diff options
context:
space:
mode:
Diffstat (limited to 'azalea-registry/src')
-rw-r--r--azalea-registry/src/data.rs66
-rw-r--r--azalea-registry/src/extra.rs123
-rwxr-xr-xazalea-registry/src/lib.rs267
-rw-r--r--azalea-registry/src/tags/blocks.rs321
-rw-r--r--azalea-registry/src/tags/items.rs40
5 files changed, 524 insertions, 293 deletions
diff --git a/azalea-registry/src/data.rs b/azalea-registry/src/data.rs
index 17338c8f..7ae55119 100644
--- a/azalea-registry/src/data.rs
+++ b/azalea-registry/src/data.rs
@@ -1,41 +1,55 @@
-use azalea_buf::AzBuf;
+use azalea_buf::{AzBuf, AzaleaRead, AzaleaWrite};
+
+use crate::Registry;
/// A registry which has its values decided by the server in the
/// `ClientboundRegistryData` packet.
///
/// These can be resolved into their actual values with
/// `ResolvableDataRegistry` from azalea-core.
-pub trait DataRegistry {
+pub trait DataRegistry: AzaleaRead + AzaleaWrite {
const NAME: &'static str;
fn protocol_id(&self) -> u32;
+ fn new_raw(id: u32) -> Self;
}
-
-#[derive(Debug, Clone, Copy, AzBuf, PartialEq, Eq, Hash)]
-pub struct Enchantment {
- #[var]
- id: u32,
-}
-impl DataRegistry for Enchantment {
- const NAME: &'static str = "enchantment";
- fn protocol_id(&self) -> u32 {
- self.id
+impl<T: DataRegistry> Registry for T {
+ fn from_u32(value: u32) -> Option<Self> {
+ Some(Self::new_raw(value))
}
-}
-#[derive(Debug, Clone, Copy, AzBuf, PartialEq, Eq, Hash)]
-pub struct DimensionType {
- #[var]
- id: u32,
-}
-impl DimensionType {
- pub fn new_raw(id: u32) -> Self {
- Self { id }
+ fn to_u32(&self) -> u32 {
+ self.protocol_id()
}
}
-impl DataRegistry for DimensionType {
- const NAME: &'static str = "dimension_type";
- fn protocol_id(&self) -> u32 {
- self.id
- }
+
+macro_rules! data_registry {
+ ($name:ident, $registry_name:expr) => {
+ #[derive(Debug, Clone, Copy, AzBuf, PartialEq, Eq, Hash)]
+ pub struct $name {
+ #[var]
+ id: u32,
+ }
+ impl DataRegistry for $name {
+ const NAME: &'static str = $registry_name;
+ fn protocol_id(&self) -> u32 {
+ self.id
+ }
+ fn new_raw(id: u32) -> Self {
+ Self { id }
+ }
+ }
+ };
}
+
+data_registry! {Enchantment, "enchantment"}
+data_registry! {DimensionType, "dimension_type"}
+data_registry! {DamageKind, "damage_kind"}
+data_registry! {WolfSoundVariant, "wolf_sound_variant"}
+data_registry! {CowVariant, "cow_variant"}
+data_registry! {ChickenVariant, "chicken_variant"}
+data_registry! {FrogVariant, "frog_variant"}
+data_registry! {CatVariant, "cat_variant"}
+data_registry! {PigVariant, "pig_variant"}
+data_registry! {PaintingVariant, "painting_variant"}
+data_registry! {WolfVariant, "wolf_variant"}
diff --git a/azalea-registry/src/extra.rs b/azalea-registry/src/extra.rs
index 1ba1f0a9..694b9820 100644
--- a/azalea-registry/src/extra.rs
+++ b/azalea-registry/src/extra.rs
@@ -7,24 +7,82 @@ use azalea_registry_macros::registry;
use crate::Registry;
registry! {
-enum WolfVariant {
- Pale => "minecraft:wolf",
- Spotted => "minecraft:wolf_spotted",
- Snowy => "minecraft:wolf_snowy",
- Black => "minecraft:wolf_black",
- Ashen => "minecraft:wolf_ashen",
- Rusty => "minecraft:wolf_rusty",
- Woods => "minecraft:wolf_woods",
- Chestnut => "minecraft:wolf_chestnut",
- Striped => "minecraft:wolf_striped",
+#[derive(Default)]
+enum FoxVariant {
+ #[default]
+ Red => "minecraft:red",
+ Snow => "minecraft:snow",
}
}
-#[allow(clippy::derivable_impls)]
-impl Default for WolfVariant {
- fn default() -> Self {
- WolfVariant::Pale
- }
+registry! {
+enum ParrotVariant {
+ RedBlue => "minecraft:red_blue",
+ Blue => "minecraft:blue",
+ Green => "minecraft:green",
+ YellowBlue => "minecraft:yellow_blue",
+ Gray => "minecraft:gray",
+}
+}
+
+registry! {
+#[derive(Default)]
+enum MooshroomVariant {
+ #[default]
+ Red => "minecraft:red",
+ Brown => "minecraft:brown",
+}
+}
+
+registry! {
+#[derive(Default)]
+enum RabbitVariant {
+ #[default]
+ Brown => "minecraft:brown",
+ White => "minecraft:white",
+ Black => "minecraft:black",
+ WhiteSplotched => "minecraft:white_splotched",
+ Gold => "minecraft:gold",
+ Salt => "minecraft:salt",
+ Evil => "minecraft:evil",
+}
+}
+
+registry! {
+#[derive(Default)]
+enum HorseVariant {
+ #[default]
+ White => "minecraft:white",
+ Creamy => "minecraft:creamy",
+ Chestnut => "minecraft:chestnut",
+ Brown => "minecraft:brown",
+ Black => "minecraft:black",
+ Gray => "minecraft:gray",
+ DarkBrown => "minecraft:dark_brown",
+}
+}
+
+registry! {
+#[derive(Default)]
+enum LlamaVariant {
+ #[default]
+ Creamy => "minecraft:creamy",
+ White => "minecraft:white",
+ Brown => "minecraft:brown",
+ Gray => "minecraft:gray",
+}
+}
+
+registry! {
+#[derive(Default)]
+enum AxolotlVariant {
+ #[default]
+ Lucy => "minecraft:lucy",
+ Wild => "minecraft:wild",
+ Gold => "minecraft:gold",
+ Cyan => "minecraft:cyan",
+ Blue => "minecraft:blue",
+}
}
registry! {
@@ -135,38 +193,3 @@ enum Instrument {
DreamGoatHorn => "minecraft:dream_goat_horn",
}
}
-
-registry! {
-enum PaintingVariant {
- Kebab => "minecraft:kebab",
- Aztec => "minecraft:aztec",
- Alban => "minecraft:alban",
- Aztec2 => "minecraft:aztec2",
- Bomb => "minecraft:bomb",
- Plant => "minecraft:plant",
- Wasteland => "minecraft:wasteland",
- Pool => "minecraft:pool",
- Courbet => "minecraft:courbet",
- Sea => "minecraft:sea",
- Sunset => "minecraft:sunset",
- Creebet => "minecraft:creebet",
- Wanderer => "minecraft:wanderer",
- Graham => "minecraft:graham",
- Match => "minecraft:match",
- Bust => "minecraft:bust",
- Stage => "minecraft:stage",
- Void => "minecraft:void",
- SkullAndRoses => "minecraft:skull_and_roses",
- Wither => "minecraft:wither",
- Fighters => "minecraft:fighters",
- Pointer => "minecraft:pointer",
- Pigscene => "minecraft:pigscene",
- BurningSkull => "minecraft:burning_skull",
- Skeleton => "minecraft:skeleton",
- Earth => "minecraft:earth",
- Wind => "minecraft:wind",
- Water => "minecraft:water",
- Fire => "minecraft:fire",
- DonkeyKong => "minecraft:donkey_kong",
-}
-}
diff --git a/azalea-registry/src/lib.rs b/azalea-registry/src/lib.rs
index 59b8101f..11e44829 100755
--- a/azalea-registry/src/lib.rs
+++ b/azalea-registry/src/lib.rs
@@ -158,10 +158,9 @@ impl<R: Registry, Direct: AzaleaRead + AzaleaWrite> AzaleaRead for Holder<R, Dir
if id == 0 {
Ok(Self::Direct(Direct::azalea_read(buf)?))
} else {
- let Some(value) = R::from_u32(id - 1) else {
- return Err(BufReadError::UnexpectedEnumVariant {
- id: (id - 1) as i32,
- });
+ let id = id - 1;
+ let Some(value) = R::from_u32(id) else {
+ return Err(BufReadError::UnexpectedEnumVariant { id: id as i32 });
};
Ok(Self::Reference(value))
}
@@ -415,6 +414,9 @@ enum Block {
ShortGrass => "minecraft:short_grass",
Fern => "minecraft:fern",
DeadBush => "minecraft:dead_bush",
+ Bush => "minecraft:bush",
+ ShortDryGrass => "minecraft:short_dry_grass",
+ TallDryGrass => "minecraft:tall_dry_grass",
Seagrass => "minecraft:seagrass",
TallSeagrass => "minecraft:tall_seagrass",
Piston => "minecraft:piston",
@@ -546,6 +548,7 @@ enum Block {
Ice => "minecraft:ice",
SnowBlock => "minecraft:snow_block",
Cactus => "minecraft:cactus",
+ CactusFlower => "minecraft:cactus_flower",
Clay => "minecraft:clay",
SugarCane => "minecraft:sugar_cane",
Jukebox => "minecraft:jukebox",
@@ -1144,6 +1147,8 @@ enum Block {
WarpedWallSign => "minecraft:warped_wall_sign",
StructureBlock => "minecraft:structure_block",
Jigsaw => "minecraft:jigsaw",
+ TestBlock => "minecraft:test_block",
+ TestInstanceBlock => "minecraft:test_instance_block",
Composter => "minecraft:composter",
Target => "minecraft:target",
BeeNest => "minecraft:bee_nest",
@@ -1326,6 +1331,8 @@ enum Block {
FloweringAzalea => "minecraft:flowering_azalea",
MossCarpet => "minecraft:moss_carpet",
PinkPetals => "minecraft:pink_petals",
+ Wildflowers => "minecraft:wildflowers",
+ LeafLitter => "minecraft:leaf_litter",
MossBlock => "minecraft:moss_block",
BigDripleaf => "minecraft:big_dripleaf",
BigDripleafStem => "minecraft:big_dripleaf_stem",
@@ -1377,6 +1384,7 @@ enum Block {
ClosedEyeblossom => "minecraft:closed_eyeblossom",
PottedOpenEyeblossom => "minecraft:potted_open_eyeblossom",
PottedClosedEyeblossom => "minecraft:potted_closed_eyeblossom",
+ FireflyBush => "minecraft:firefly_bush",
}
}
@@ -1430,6 +1438,8 @@ enum BlockEntityKind {
Crafter => "minecraft:crafter",
TrialSpawner => "minecraft:trial_spawner",
Vault => "minecraft:vault",
+ TestBlock => "minecraft:test_block",
+ TestInstanceBlock => "minecraft:test_instance_block",
}
}
@@ -1452,22 +1462,6 @@ enum BlockPredicateKind {
}
registry! {
-enum CatVariant {
- Tabby => "minecraft:tabby",
- Black => "minecraft:black",
- Red => "minecraft:red",
- Siamese => "minecraft:siamese",
- BritishShorthair => "minecraft:british_shorthair",
- Calico => "minecraft:calico",
- Persian => "minecraft:persian",
- Ragdoll => "minecraft:ragdoll",
- White => "minecraft:white",
- Jellie => "minecraft:jellie",
- AllBlack => "minecraft:all_black",
-}
-}
-
-registry! {
enum ChunkStatus {
Empty => "minecraft:empty",
StructureStarts => "minecraft:structure_starts",
@@ -1533,6 +1527,7 @@ enum CommandArgumentKind {
ResourceOrTagKey => "minecraft:resource_or_tag_key",
Resource => "minecraft:resource",
ResourceKey => "minecraft:resource_key",
+ ResourceSelector => "minecraft:resource_selector",
TemplateMirror => "minecraft:template_mirror",
TemplateRotation => "minecraft:template_rotation",
Heightmap => "minecraft:heightmap",
@@ -1725,7 +1720,8 @@ enum EntityKind {
PiglinBrute => "minecraft:piglin_brute",
Pillager => "minecraft:pillager",
PolarBear => "minecraft:polar_bear",
- Potion => "minecraft:potion",
+ SplashPotion => "minecraft:splash_potion",
+ LingeringPotion => "minecraft:lingering_potion",
Pufferfish => "minecraft:pufferfish",
Rabbit => "minecraft:rabbit",
Ravager => "minecraft:ravager",
@@ -1798,14 +1794,6 @@ enum Fluid {
}
registry! {
-enum FrogVariant {
- Temperate => "minecraft:temperate",
- Warm => "minecraft:warm",
- Cold => "minecraft:cold",
-}
-}
-
-registry! {
enum GameEvent {
BlockActivate => "minecraft:block_activate",
BlockAttach => "minecraft:block_attach",
@@ -2098,9 +2086,13 @@ enum Item {
Cobweb => "minecraft:cobweb",
ShortGrass => "minecraft:short_grass",
Fern => "minecraft:fern",
+ Bush => "minecraft:bush",
Azalea => "minecraft:azalea",
FloweringAzalea => "minecraft:flowering_azalea",
DeadBush => "minecraft:dead_bush",
+ FireflyBush => "minecraft:firefly_bush",
+ ShortDryGrass => "minecraft:short_dry_grass",
+ TallDryGrass => "minecraft:tall_dry_grass",
Seagrass => "minecraft:seagrass",
SeaPickle => "minecraft:sea_pickle",
WhiteWool => "minecraft:white_wool",
@@ -2149,6 +2141,8 @@ enum Item {
SugarCane => "minecraft:sugar_cane",
Kelp => "minecraft:kelp",
PinkPetals => "minecraft:pink_petals",
+ Wildflowers => "minecraft:wildflowers",
+ LeafLitter => "minecraft:leaf_litter",
MossCarpet => "minecraft:moss_carpet",
MossBlock => "minecraft:moss_block",
PaleMossCarpet => "minecraft:pale_moss_carpet",
@@ -2217,6 +2211,7 @@ enum Item {
Ice => "minecraft:ice",
SnowBlock => "minecraft:snow_block",
Cactus => "minecraft:cactus",
+ CactusFlower => "minecraft:cactus_flower",
Clay => "minecraft:clay",
Jukebox => "minecraft:jukebox",
OakFence => "minecraft:oak_fence",
@@ -2719,6 +2714,8 @@ enum Item {
BambooChestRaft => "minecraft:bamboo_chest_raft",
StructureBlock => "minecraft:structure_block",
Jigsaw => "minecraft:jigsaw",
+ TestBlock => "minecraft:test_block",
+ TestInstanceBlock => "minecraft:test_instance_block",
TurtleHelmet => "minecraft:turtle_helmet",
TurtleScute => "minecraft:turtle_scute",
ArmadilloScute => "minecraft:armadillo_scute",
@@ -2855,6 +2852,8 @@ enum Item {
Book => "minecraft:book",
SlimeBall => "minecraft:slime_ball",
Egg => "minecraft:egg",
+ BlueEgg => "minecraft:blue_egg",
+ BrownEgg => "minecraft:brown_egg",
Compass => "minecraft:compass",
RecoveryCompass => "minecraft:recovery_compass",
Bundle => "minecraft:bundle",
@@ -3403,6 +3402,7 @@ enum MemoryModuleKind {
NearestPlayers => "minecraft:nearest_players",
NearestVisiblePlayer => "minecraft:nearest_visible_player",
NearestVisibleTargetablePlayer => "minecraft:nearest_visible_targetable_player",
+ NearestVisibleTargetablePlayers => "minecraft:nearest_visible_targetable_players",
WalkTarget => "minecraft:walk_target",
LookTarget => "minecraft:look_target",
AttackTarget => "minecraft:attack_target",
@@ -3581,6 +3581,7 @@ enum ParticleKind {
Infested => "minecraft:infested",
CherryLeaves => "minecraft:cherry_leaves",
PaleOakLeaves => "minecraft:pale_oak_leaves",
+ TintedLeaves => "minecraft:tinted_leaves",
SculkSoul => "minecraft:sculk_soul",
SculkCharge => "minecraft:sculk_charge",
SculkChargePop => "minecraft:sculk_charge_pop",
@@ -3658,6 +3659,7 @@ enum ParticleKind {
RaidOmen => "minecraft:raid_omen",
TrialOmen => "minecraft:trial_omen",
BlockCrumble => "minecraft:block_crumble",
+ Firefly => "minecraft:firefly",
}
}
@@ -4075,6 +4077,8 @@ enum SoundEvent {
ItemBundleInsert => "minecraft:item.bundle.insert",
ItemBundleInsertFail => "minecraft:item.bundle.insert_fail",
ItemBundleRemoveOne => "minecraft:item.bundle.remove_one",
+ BlockCactusFlowerBreak => "minecraft:block.cactus_flower.break",
+ BlockCactusFlowerPlace => "minecraft:block.cactus_flower.place",
BlockCakeAddCandle => "minecraft:block.cake.add_candle",
BlockCalciteBreak => "minecraft:block.calcite.break",
BlockCalciteStep => "minecraft:block.calcite.step",
@@ -4254,6 +4258,7 @@ enum SoundEvent {
ItemCrossbowQuickCharge2 => "minecraft:item.crossbow.quick_charge_2",
ItemCrossbowQuickCharge3 => "minecraft:item.crossbow.quick_charge_3",
ItemCrossbowShoot => "minecraft:item.crossbow.shoot",
+ BlockDeadbushIdle => "minecraft:block.deadbush.idle",
BlockDecoratedPotBreak => "minecraft:block.decorated_pot.break",
BlockDecoratedPotFall => "minecraft:block.decorated_pot.fall",
BlockDecoratedPotHit => "minecraft:block.decorated_pot.hit",
@@ -4379,6 +4384,7 @@ enum SoundEvent {
BlockFenceGateClose => "minecraft:block.fence_gate.close",
BlockFenceGateOpen => "minecraft:block.fence_gate.open",
ItemFirechargeUse => "minecraft:item.firecharge.use",
+ BlockFireflyBushIdle => "minecraft:block.firefly_bush.idle",
EntityFireworkRocketBlast => "minecraft:entity.firework_rocket.blast",
EntityFireworkRocketBlastFar => "minecraft:entity.firework_rocket.blast_far",
EntityFireworkRocketLargeBlast => "minecraft:entity.firework_rocket.large_blast",
@@ -4618,6 +4624,11 @@ enum SoundEvent {
EntityIllusionerPrepareBlindness => "minecraft:entity.illusioner.prepare_blindness",
EntityIllusionerPrepareMirror => "minecraft:entity.illusioner.prepare_mirror",
ItemInkSacUse => "minecraft:item.ink_sac.use",
+ BlockIronBreak => "minecraft:block.iron.break",
+ BlockIronStep => "minecraft:block.iron.step",
+ BlockIronPlace => "minecraft:block.iron.place",
+ BlockIronHit => "minecraft:block.iron.hit",
+ BlockIronFall => "minecraft:block.iron.fall",
BlockIronDoorClose => "minecraft:block.iron_door.close",
BlockIronDoorOpen => "minecraft:block.iron_door.open",
EntityIronGolemAttack => "minecraft:entity.iron_golem.attack",
@@ -4650,6 +4661,11 @@ enum SoundEvent {
BlockLavaAmbient => "minecraft:block.lava.ambient",
BlockLavaExtinguish => "minecraft:block.lava.extinguish",
BlockLavaPop => "minecraft:block.lava.pop",
+ BlockLeafLitterBreak => "minecraft:block.leaf_litter.break",
+ BlockLeafLitterStep => "minecraft:block.leaf_litter.step",
+ BlockLeafLitterPlace => "minecraft:block.leaf_litter.place",
+ BlockLeafLitterHit => "minecraft:block.leaf_litter.hit",
+ BlockLeafLitterFall => "minecraft:block.leaf_litter.fall",
EntityLeashKnotBreak => "minecraft:entity.leash_knot.break",
EntityLeashKnotPlace => "minecraft:entity.leash_knot.place",
BlockLeverClick => "minecraft:block.lever.click",
@@ -5064,6 +5080,8 @@ enum SoundEvent {
BlockSandHit => "minecraft:block.sand.hit",
BlockSandPlace => "minecraft:block.sand.place",
BlockSandStep => "minecraft:block.sand.step",
+ BlockSandIdle => "minecraft:block.sand.idle",
+ BlockSandWind => "minecraft:block.sand.wind",
BlockScaffoldingBreak => "minecraft:block.scaffolding.break",
BlockScaffoldingFall => "minecraft:block.scaffolding.fall",
BlockScaffoldingHit => "minecraft:block.scaffolding.hit",
@@ -5440,15 +5458,50 @@ enum SoundEvent {
ItemWolfArmorCrack => "minecraft:item.wolf_armor.crack",
ItemWolfArmorDamage => "minecraft:item.wolf_armor.damage",
ItemWolfArmorRepair => "minecraft:item.wolf_armor.repair",
+ EntityWolfShake => "minecraft:entity.wolf.shake",
+ EntityWolfStep => "minecraft:entity.wolf.step",
EntityWolfAmbient => "minecraft:entity.wolf.ambient",
EntityWolfDeath => "minecraft:entity.wolf.death",
EntityWolfGrowl => "minecraft:entity.wolf.growl",
- EntityWolfHowl => "minecraft:entity.wolf.howl",
EntityWolfHurt => "minecraft:entity.wolf.hurt",
EntityWolfPant => "minecraft:entity.wolf.pant",
- EntityWolfShake => "minecraft:entity.wolf.shake",
- EntityWolfStep => "minecraft:entity.wolf.step",
EntityWolfWhine => "minecraft:entity.wolf.whine",
+ EntityWolfPuglinAmbient => "minecraft:entity.wolf_puglin.ambient",
+ EntityWolfPuglinDeath => "minecraft:entity.wolf_puglin.death",
+ EntityWolfPuglinGrowl => "minecraft:entity.wolf_puglin.growl",
+ EntityWolfPuglinHurt => "minecraft:entity.wolf_puglin.hurt",
+ EntityWolfPuglinPant => "minecraft:entity.wolf_puglin.pant",
+ EntityWolfPuglinWhine => "minecraft:entity.wolf_puglin.whine",
+ EntityWolfSadAmbient => "minecraft:entity.wolf_sad.ambient",
+ EntityWolfSadDeath => "minecraft:entity.wolf_sad.death",
+ EntityWolfSadGrowl => "minecraft:entity.wolf_sad.growl",
+ EntityWolfSadHurt => "minecraft:entity.wolf_sad.hurt",
+ EntityWolfSadPant => "minecraft:entity.wolf_sad.pant",
+ EntityWolfSadWhine => "minecraft:entity.wolf_sad.whine",
+ EntityWolfAngryAmbient => "minecraft:entity.wolf_angry.ambient",
+ EntityWolfAngryDeath => "minecraft:entity.wolf_angry.death",
+ EntityWolfAngryGrowl => "minecraft:entity.wolf_angry.growl",
+ EntityWolfAngryHurt => "minecraft:entity.wolf_angry.hurt",
+ EntityWolfAngryPant => "minecraft:entity.wolf_angry.pant",
+ EntityWolfAngryWhine => "minecraft:entity.wolf_angry.whine",
+ EntityWolfGrumpyAmbient => "minecraft:entity.wolf_grumpy.ambient",
+ EntityWolfGrumpyDeath => "minecraft:entity.wolf_grumpy.death",
+ EntityWolfGrumpyGrowl => "minecraft:entity.wolf_grumpy.growl",
+ EntityWolfGrumpyHurt => "minecraft:entity.wolf_grumpy.hurt",
+ EntityWolfGrumpyPant => "minecraft:entity.wolf_grumpy.pant",
+ EntityWolfGrumpyWhine => "minecraft:entity.wolf_grumpy.whine",
+ EntityWolfBigAmbient => "minecraft:entity.wolf_big.ambient",
+ EntityWolfBigDeath => "minecraft:entity.wolf_big.death",
+ EntityWolfBigGrowl => "minecraft:entity.wolf_big.growl",
+ EntityWolfBigHurt => "minecraft:entity.wolf_big.hurt",
+ EntityWolfBigPant => "minecraft:entity.wolf_big.pant",
+ EntityWolfBigWhine => "minecraft:entity.wolf_big.whine",
+ EntityWolfCuteAmbient => "minecraft:entity.wolf_cute.ambient",
+ EntityWolfCuteDeath => "minecraft:entity.wolf_cute.death",
+ EntityWolfCuteGrowl => "minecraft:entity.wolf_cute.growl",
+ EntityWolfCuteHurt => "minecraft:entity.wolf_cute.hurt",
+ EntityWolfCutePant => "minecraft:entity.wolf_cute.pant",
+ EntityWolfCuteWhine => "minecraft:entity.wolf_cute.whine",
BlockWoodenDoorClose => "minecraft:block.wooden_door.close",
BlockWoodenDoorOpen => "minecraft:block.wooden_door.open",
BlockWoodenTrapdoorClose => "minecraft:block.wooden_trapdoor.close",
@@ -5626,6 +5679,7 @@ registry! {
enum WorldgenFeature {
NoOp => "minecraft:no_op",
Tree => "minecraft:tree",
+ FallenTree => "minecraft:fallen_tree",
Flower => "minecraft:flower",
NoBonemealFlower => "minecraft:no_bonemeal_flower",
RandomPatch => "minecraft:random_patch",
@@ -5888,6 +5942,8 @@ enum WorldgenTreeDecoratorKind {
Beehive => "minecraft:beehive",
AlterGround => "minecraft:alter_ground",
AttachedToLeaves => "minecraft:attached_to_leaves",
+ PlaceOnGround => "minecraft:place_on_ground",
+ AttachedToLogs => "minecraft:attached_to_logs",
}
}
@@ -5992,8 +6048,10 @@ enum BlockKind {
Brushable => "minecraft:brushable",
BubbleColumn => "minecraft:bubble_column",
BuddingAmethyst => "minecraft:budding_amethyst",
+ Bush => "minecraft:bush",
Button => "minecraft:button",
Cactus => "minecraft:cactus",
+ CactusFlower => "minecraft:cactus_flower",
Cake => "minecraft:cake",
CalibratedSculkSensor => "minecraft:calibrated_sculk_sensor",
Campfire => "minecraft:campfire",
@@ -6028,7 +6086,7 @@ enum BlockKind {
Crop => "minecraft:crop",
CryingObsidian => "minecraft:crying_obsidian",
DaylightDetector => "minecraft:daylight_detector",
- DeadBush => "minecraft:dead_bush",
+ DryVegetation => "minecraft:dry_vegetation",
DecoratedPot => "minecraft:decorated_pot",
DetectorRail => "minecraft:detector_rail",
DirtPath => "minecraft:dirt_path",
@@ -6050,6 +6108,7 @@ enum BlockKind {
Fence => "minecraft:fence",
FenceGate => "minecraft:fence_gate",
Fire => "minecraft:fire",
+ FireflyBush => "minecraft:firefly_bush",
FletchingTable => "minecraft:fletching_table",
Flower => "minecraft:flower",
FlowerPot => "minecraft:flower_pot",
@@ -6082,7 +6141,7 @@ enum BlockKind {
Lantern => "minecraft:lantern",
LavaCauldron => "minecraft:lava_cauldron",
LayeredCauldron => "minecraft:layered_cauldron",
- Leaves => "minecraft:leaves",
+ LeafLitter => "minecraft:leaf_litter",
Lectern => "minecraft:lectern",
Lever => "minecraft:lever",
Light => "minecraft:light",
@@ -6107,8 +6166,7 @@ enum BlockKind {
Nylium => "minecraft:nylium",
Observer => "minecraft:observer",
Piglinwallskull => "minecraft:piglinwallskull",
- ParticleLeaves => "minecraft:particle_leaves",
- PinkPetals => "minecraft:pink_petals",
+ FlowerBed => "minecraft:flower_bed",
PistonBase => "minecraft:piston_base",
PistonHead => "minecraft:piston_head",
PitcherCrop => "minecraft:pitcher_crop",
@@ -6133,6 +6191,7 @@ enum BlockKind {
Roots => "minecraft:roots",
RotatedPillar => "minecraft:rotated_pillar",
Sapling => "minecraft:sapling",
+ Sand => "minecraft:sand",
Scaffolding => "minecraft:scaffolding",
SculkCatalyst => "minecraft:sculk_catalyst",
Sculk => "minecraft:sculk",
@@ -6141,6 +6200,7 @@ enum BlockKind {
SculkVein => "minecraft:sculk_vein",
Seagrass => "minecraft:seagrass",
SeaPickle => "minecraft:sea_pickle",
+ ShortDryGrass => "minecraft:short_dry_grass",
ShulkerBox => "minecraft:shulker_box",
Skull => "minecraft:skull",
Slab => "minecraft:slab",
@@ -6167,11 +6227,16 @@ enum BlockKind {
StructureVoid => "minecraft:structure_void",
SugarCane => "minecraft:sugar_cane",
SweetBerryBush => "minecraft:sweet_berry_bush",
+ TallDryGrass => "minecraft:tall_dry_grass",
TallFlower => "minecraft:tall_flower",
TallGrass => "minecraft:tall_grass",
TallSeagrass => "minecraft:tall_seagrass",
Target => "minecraft:target",
+ Terracotta => "minecraft:terracotta",
+ Test => "minecraft:test",
+ TestInstance => "minecraft:test_instance",
TintedGlass => "minecraft:tinted_glass",
+ TintedParticleLeaves => "minecraft:tinted_particle_leaves",
Tnt => "minecraft:tnt",
TorchflowerCrop => "minecraft:torchflower_crop",
Torch => "minecraft:torch",
@@ -6184,6 +6249,7 @@ enum BlockKind {
TurtleEgg => "minecraft:turtle_egg",
TwistingVinesPlant => "minecraft:twisting_vines_plant",
TwistingVines => "minecraft:twisting_vines",
+ UntintedParticleLeaves => "minecraft:untinted_particle_leaves",
Vault => "minecraft:vault",
Vine => "minecraft:vine",
WallBanner => "minecraft:wall_banner",
@@ -6307,8 +6373,7 @@ enum DataComponentKind {
CanBreak => "minecraft:can_break",
AttributeModifiers => "minecraft:attribute_modifiers",
CustomModelData => "minecraft:custom_model_data",
- HideAdditionalTooltip => "minecraft:hide_additional_tooltip",
- HideTooltip => "minecraft:hide_tooltip",
+ TooltipDisplay => "minecraft:tooltip_display",
RepairCost => "minecraft:repair_cost",
CreativeSlotLock => "minecraft:creative_slot_lock",
EnchantmentGlintOverride => "minecraft:enchantment_glint_override",
@@ -6319,12 +6384,14 @@ enum DataComponentKind {
UseCooldown => "minecraft:use_cooldown",
DamageResistant => "minecraft:damage_resistant",
Tool => "minecraft:tool",
+ Weapon => "minecraft:weapon",
Enchantable => "minecraft:enchantable",
Equippable => "minecraft:equippable",
Repairable => "minecraft:repairable",
Glider => "minecraft:glider",
TooltipStyle => "minecraft:tooltip_style",
DeathProtection => "minecraft:death_protection",
+ BlocksAttacks => "minecraft:blocks_attacks",
StoredEnchantments => "minecraft:stored_enchantments",
DyedColor => "minecraft:dyed_color",
MapColor => "minecraft:map_color",
@@ -6334,6 +6401,7 @@ enum DataComponentKind {
ChargedProjectiles => "minecraft:charged_projectiles",
BundleContents => "minecraft:bundle_contents",
PotionContents => "minecraft:potion_contents",
+ PotionDurationScale => "minecraft:potion_duration_scale",
SuspiciousStewEffects => "minecraft:suspicious_stew_effects",
WritableBookContent => "minecraft:writable_book_content",
WrittenBookContent => "minecraft:written_book_content",
@@ -6343,8 +6411,10 @@ enum DataComponentKind {
BucketEntityData => "minecraft:bucket_entity_data",
BlockEntityData => "minecraft:block_entity_data",
Instrument => "minecraft:instrument",
+ ProvidesTrimMaterial => "minecraft:provides_trim_material",
OminousBottleAmplifier => "minecraft:ominous_bottle_amplifier",
JukeboxPlayable => "minecraft:jukebox_playable",
+ ProvidesBannerPatterns => "minecraft:provides_banner_patterns",
Recipes => "minecraft:recipes",
LodestoneTracker => "minecraft:lodestone_tracker",
FireworkExplosion => "minecraft:firework_explosion",
@@ -6359,6 +6429,31 @@ enum DataComponentKind {
Bees => "minecraft:bees",
Lock => "minecraft:lock",
ContainerLoot => "minecraft:container_loot",
+ BreakSound => "minecraft:break_sound",
+ VillagerVariant => "minecraft:villager/variant",
+ WolfVariant => "minecraft:wolf/variant",
+ WolfSoundVariant => "minecraft:wolf/sound_variant",
+ WolfCollar => "minecraft:wolf/collar",
+ FoxVariant => "minecraft:fox/variant",
+ SalmonSize => "minecraft:salmon/size",
+ ParrotVariant => "minecraft:parrot/variant",
+ TropicalFishPattern => "minecraft:tropical_fish/pattern",
+ TropicalFishBaseColor => "minecraft:tropical_fish/base_color",
+ TropicalFishPatternColor => "minecraft:tropical_fish/pattern_color",
+ MooshroomVariant => "minecraft:mooshroom/variant",
+ RabbitVariant => "minecraft:rabbit/variant",
+ PigVariant => "minecraft:pig/variant",
+ CowVariant => "minecraft:cow/variant",
+ ChickenVariant => "minecraft:chicken/variant",
+ FrogVariant => "minecraft:frog/variant",
+ HorseVariant => "minecraft:horse/variant",
+ PaintingVariant => "minecraft:painting/variant",
+ LlamaVariant => "minecraft:llama/variant",
+ AxolotlVariant => "minecraft:axolotl/variant",
+ CatVariant => "minecraft:cat/variant",
+ CatCollar => "minecraft:cat/collar",
+ SheepColor => "minecraft:sheep/color",
+ ShulkerColor => "minecraft:shulker/color",
}
}
@@ -6370,39 +6465,6 @@ enum EntitySubPredicateKind {
Slime => "minecraft:slime",
Raider => "minecraft:raider",
Sheep => "minecraft:sheep",
- Axolotl => "minecraft:axolotl",
- Fox => "minecraft:fox",
- Mooshroom => "minecraft:mooshroom",
- Rabbit => "minecraft:rabbit",
- Horse => "minecraft:horse",
- Llama => "minecraft:llama",
- Villager => "minecraft:villager",
- Parrot => "minecraft:parrot",
- Salmon => "minecraft:salmon",
- TropicalFish => "minecraft:tropical_fish",
- Painting => "minecraft:painting",
- Cat => "minecraft:cat",
- Frog => "minecraft:frog",
- Wolf => "minecraft:wolf",
-}
-}
-
-registry! {
-enum ItemSubPredicateKind {
- Damage => "minecraft:damage",
- Enchantments => "minecraft:enchantments",
- StoredEnchantments => "minecraft:stored_enchantments",
- PotionContents => "minecraft:potion_contents",
- CustomData => "minecraft:custom_data",
- Container => "minecraft:container",
- BundleContents => "minecraft:bundle_contents",
- FireworkExplosion => "minecraft:firework_explosion",
- Fireworks => "minecraft:fireworks",
- WritableBookContent => "minecraft:writable_book_content",
- WrittenBookContent => "minecraft:written_book_content",
- AttributeModifiers => "minecraft:attribute_modifiers",
- Trim => "minecraft:trim",
- JukeboxPlayable => "minecraft:jukebox_playable",
}
}
@@ -6625,3 +6687,66 @@ enum SlotDisplay {
Composite => "minecraft:composite",
}
}
+
+registry! {
+enum TicketKind {
+ Start => "minecraft:start",
+ Dragon => "minecraft:dragon",
+ PlayerLoading => "minecraft:player_loading",
+ PlayerSimulation => "minecraft:player_simulation",
+ Forced => "minecraft:forced",
+ Portal => "minecraft:portal",
+ EnderPearl => "minecraft:ender_pearl",
+ Unknown => "minecraft:unknown",
+}
+}
+
+registry! {
+enum TestEnvironmentDefinitionKind {
+ AllOf => "minecraft:all_of",
+ GameRules => "minecraft:game_rules",
+ TimeOfDay => "minecraft:time_of_day",
+ Weather => "minecraft:weather",
+ Function => "minecraft:function",
+}
+}
+
+registry! {
+enum TestFunction {
+ AlwaysPass => "minecraft:always_pass",
+}
+}
+
+registry! {
+enum TestInstanceKind {
+ BlockBased => "minecraft:block_based",
+ Function => "minecraft:function",
+}
+}
+
+registry! {
+enum DataComponentPredicateKind {
+ Damage => "minecraft:damage",
+ Enchantments => "minecraft:enchantments",
+ StoredEnchantments => "minecraft:stored_enchantments",
+ PotionContents => "minecraft:potion_contents",
+ CustomData => "minecraft:custom_data",
+ Container => "minecraft:container",
+ BundleContents => "minecraft:bundle_contents",
+ FireworkExplosion => "minecraft:firework_explosion",
+ Fireworks => "minecraft:fireworks",
+ WritableBookContent => "minecraft:writable_book_content",
+ WrittenBookContent => "minecraft:written_book_content",
+ AttributeModifiers => "minecraft:attribute_modifiers",
+ Trim => "minecraft:trim",
+ JukeboxPlayable => "minecraft:jukebox_playable",
+}
+}
+
+registry! {
+enum SpawnConditionKind {
+ Structure => "minecraft:structure",
+ MoonBrightness => "minecraft:moon_brightness",
+ Biome => "minecraft:biome",
+}
+}
diff --git a/azalea-registry/src/tags/blocks.rs b/azalea-registry/src/tags/blocks.rs
index 08def1b3..ffabba8c 100644
--- a/azalea-registry/src/tags/blocks.rs
+++ b/azalea-registry/src/tags/blocks.rs
@@ -360,8 +360,10 @@ pub static BEE_ATTRACTIVE: LazyLock<HashSet<Block>> = LazyLock::new(|| {
Block::MangrovePropagule,
Block::CherryLeaves,
Block::PinkPetals,
+ Block::Wildflowers,
Block::ChorusFlower,
Block::SporeBlossom,
+ Block::CactusFlower,
])
});
pub static BEE_GROWABLES: LazyLock<HashSet<Block>> = LazyLock::new(|| {
@@ -383,9 +385,6 @@ pub static BEEHIVES: LazyLock<HashSet<Block>> =
LazyLock::new(|| HashSet::from_iter(vec![Block::BeeNest, Block::Beehive]));
pub static BIG_DRIPLEAF_PLACEABLE: LazyLock<HashSet<Block>> = LazyLock::new(|| {
HashSet::from_iter(vec![
- Block::Farmland,
- Block::Clay,
- Block::MossBlock,
Block::Dirt,
Block::GrassBlock,
Block::Podzol,
@@ -393,9 +392,11 @@ pub static BIG_DRIPLEAF_PLACEABLE: LazyLock<HashSet<Block>> = LazyLock::new(|| {
Block::Mycelium,
Block::RootedDirt,
Block::MossBlock,
- Block::PaleMossBlock,
Block::Mud,
Block::MuddyMangroveRoots,
+ Block::Farmland,
+ Block::Clay,
+ Block::MossBlock,
])
});
pub static BIRCH_LOGS: LazyLock<HashSet<Block>> = LazyLock::new(|| {
@@ -450,6 +451,14 @@ pub static CAMEL_SAND_STEP_SOUND_BLOCKS: LazyLock<HashSet<Block>> = LazyLock::ne
Block::BlackConcretePowder,
])
});
+pub static CAMELS_SPAWNABLE_ON: LazyLock<HashSet<Block>> = LazyLock::new(|| {
+ HashSet::from_iter(vec![
+ Block::Sand,
+ Block::RedSand,
+ Block::SuspiciousSand,
+ Block::SuspiciousSand,
+ ])
+});
pub static CAMPFIRES: LazyLock<HashSet<Block>> =
LazyLock::new(|| HashSet::from_iter(vec![Block::Campfire, Block::SoulCampfire]));
pub static CANDLE_CAKES: LazyLock<HashSet<Block>> = LazyLock::new(|| {
@@ -753,41 +762,6 @@ pub static DARK_OAK_LOGS: LazyLock<HashSet<Block>> = LazyLock::new(|| {
Block::StrippedDarkOakWood,
])
});
-pub static DEAD_BUSH_MAY_PLACE_ON: LazyLock<HashSet<Block>> = LazyLock::new(|| {
- HashSet::from_iter(vec![
- Block::Sand,
- Block::RedSand,
- Block::SuspiciousSand,
- Block::SuspiciousSand,
- Block::Terracotta,
- Block::WhiteTerracotta,
- Block::OrangeTerracotta,
- Block::MagentaTerracotta,
- Block::LightBlueTerracotta,
- Block::YellowTerracotta,
- Block::LimeTerracotta,
- Block::PinkTerracotta,
- Block::GrayTerracotta,
- Block::LightGrayTerracotta,
- Block::CyanTerracotta,
- Block::PurpleTerracotta,
- Block::BlueTerracotta,
- Block::BrownTerracotta,
- Block::GreenTerracotta,
- Block::RedTerracotta,
- Block::BlackTerracotta,
- Block::Dirt,
- Block::GrassBlock,
- Block::Podzol,
- Block::CoarseDirt,
- Block::Mycelium,
- Block::RootedDirt,
- Block::MossBlock,
- Block::PaleMossBlock,
- Block::Mud,
- Block::MuddyMangroveRoots,
- ])
-});
pub static DEEPSLATE_ORE_REPLACEABLES: LazyLock<HashSet<Block>> =
LazyLock::new(|| HashSet::from_iter(vec![Block::Deepslate, Block::Tuff]));
pub static DIAMOND_ORES: LazyLock<HashSet<Block>> =
@@ -852,6 +826,8 @@ pub static DRAGON_IMMUNE: LazyLock<HashSet<Block>> = LazyLock::new(|| {
Block::IronBars,
Block::RespawnAnchor,
Block::ReinforcedDeepslate,
+ Block::TestBlock,
+ Block::TestInstanceBlock,
])
});
pub static DRAGON_TRANSPARENT: LazyLock<HashSet<Block>> =
@@ -866,6 +842,50 @@ pub static DRIPSTONE_REPLACEABLE_BLOCKS: LazyLock<HashSet<Block>> = LazyLock::ne
Block::Deepslate,
])
});
+pub static DRY_VEGETATION_MAY_PLACE_ON: LazyLock<HashSet<Block>> = LazyLock::new(|| {
+ HashSet::from_iter(vec![
+ Block::Farmland,
+ Block::Sand,
+ Block::RedSand,
+ Block::SuspiciousSand,
+ Block::SuspiciousSand,
+ Block::Terracotta,
+ Block::WhiteTerracotta,
+ Block::OrangeTerracotta,
+ Block::MagentaTerracotta,
+ Block::LightBlueTerracotta,
+ Block::YellowTerracotta,
+ Block::LimeTerracotta,
+ Block::PinkTerracotta,
+ Block::GrayTerracotta,
+ Block::LightGrayTerracotta,
+ Block::CyanTerracotta,
+ Block::PurpleTerracotta,
+ Block::BlueTerracotta,
+ Block::BrownTerracotta,
+ Block::GreenTerracotta,
+ Block::RedTerracotta,
+ Block::BlackTerracotta,
+ Block::Dirt,
+ Block::GrassBlock,
+ Block::Podzol,
+ Block::CoarseDirt,
+ Block::Mycelium,
+ Block::RootedDirt,
+ Block::MossBlock,
+ Block::PaleMossBlock,
+ Block::Mud,
+ Block::MuddyMangroveRoots,
+ ])
+});
+pub static EDIBLE_FOR_SHEEP: LazyLock<HashSet<Block>> = LazyLock::new(|| {
+ HashSet::from_iter(vec![
+ Block::ShortGrass,
+ Block::ShortDryGrass,
+ Block::TallDryGrass,
+ Block::Fern,
+ ])
+});
pub static EMERALD_ORES: LazyLock<HashSet<Block>> =
LazyLock::new(|| HashSet::from_iter(vec![Block::EmeraldOre, Block::DeepslateEmeraldOre]));
pub static ENCHANTMENT_POWER_PROVIDER: LazyLock<HashSet<Block>> =
@@ -878,6 +898,9 @@ pub static ENCHANTMENT_POWER_TRANSMITTER: LazyLock<HashSet<Block>> = LazyLock::n
Block::ShortGrass,
Block::Fern,
Block::DeadBush,
+ Block::Bush,
+ Block::ShortDryGrass,
+ Block::TallDryGrass,
Block::Seagrass,
Block::TallSeagrass,
Block::Fire,
@@ -896,6 +919,7 @@ pub static ENCHANTMENT_POWER_TRANSMITTER: LazyLock<HashSet<Block>> = LazyLock::n
Block::WarpedRoots,
Block::NetherSprouts,
Block::CrimsonRoots,
+ Block::LeafLitter,
Block::HangingRoots,
])
});
@@ -918,6 +942,7 @@ pub static ENDERMAN_HOLDABLE: LazyLock<HashSet<Block>> = LazyLock::new(|| {
Block::WarpedFungus,
Block::WarpedNylium,
Block::WarpedRoots,
+ Block::CactusFlower,
Block::Dandelion,
Block::OpenEyeblossom,
Block::Poppy,
@@ -1061,8 +1086,10 @@ pub static FLOWERS: LazyLock<HashSet<Block>> = LazyLock::new(|| {
Block::MangrovePropagule,
Block::CherryLeaves,
Block::PinkPetals,
+ Block::Wildflowers,
Block::ChorusFlower,
Block::SporeBlossom,
+ Block::CactusFlower,
Block::Dandelion,
Block::OpenEyeblossom,
Block::Poppy,
@@ -1439,6 +1466,8 @@ pub static INSIDE_STEP_SOUND_BLOCKS: LazyLock<HashSet<Block>> = LazyLock::new(||
Block::LilyPad,
Block::SmallAmethystBud,
Block::PinkPetals,
+ Block::Wildflowers,
+ Block::LeafLitter,
])
});
pub static INVALID_SPAWN_INSIDE: LazyLock<HashSet<Block>> =
@@ -1698,71 +1727,39 @@ pub static MANGROVE_ROOTS_CAN_GROW_THROUGH: LazyLock<HashSet<Block>> = LazyLock:
pub static MINEABLE_AXE: LazyLock<HashSet<Block>> = LazyLock::new(|| {
HashSet::from_iter(vec![
Block::NoteBlock,
- Block::AttachedMelonStem,
- Block::AttachedPumpkinStem,
- Block::Azalea,
Block::Bamboo,
Block::Barrel,
Block::BeeNest,
Block::Beehive,
- Block::Beetroots,
Block::BigDripleafStem,
Block::BigDripleaf,
Block::Bookshelf,
Block::BrownMushroomBlock,
- Block::BrownMushroom,
Block::Campfire,
- Block::Carrots,
Block::CartographyTable,
Block::CarvedPumpkin,
- Block::CaveVinesPlant,
- Block::CaveVines,
Block::Chest,
Block::ChorusFlower,
Block::ChorusPlant,
Block::Cocoa,
Block::Composter,
Block::CraftingTable,
- Block::CrimsonFungus,
Block::DaylightDetector,
- Block::DeadBush,
- Block::Fern,
Block::FletchingTable,
Block::GlowLichen,
- Block::ShortGrass,
- Block::HangingRoots,
Block::JackOLantern,
Block::Jukebox,
Block::Ladder,
- Block::LargeFern,
Block::Lectern,
- Block::LilyPad,
Block::Loom,
- Block::MelonStem,
Block::Melon,
Block::MushroomStem,
- Block::NetherWart,
- Block::Potatoes,
- Block::PumpkinStem,
Block::Pumpkin,
Block::RedMushroomBlock,
- Block::RedMushroom,
- Block::Scaffolding,
- Block::SmallDripleaf,
Block::SmithingTable,
Block::SoulCampfire,
- Block::SporeBlossom,
- Block::SugarCane,
- Block::SweetBerryBush,
- Block::TallGrass,
Block::TrappedChest,
- Block::TwistingVinesPlant,
- Block::TwistingVines,
Block::Vine,
- Block::WarpedFungus,
- Block::WeepingVinesPlant,
- Block::WeepingVines,
- Block::Wheat,
Block::MangroveRoots,
Block::BambooMosaic,
Block::BambooMosaicSlab,
@@ -1825,17 +1822,6 @@ pub static MINEABLE_AXE: LazyLock<HashSet<Block>> = LazyLock::new(|| {
Block::MangrovePlanks,
Block::BambooPlanks,
Block::CherryPlanks,
- Block::OakSapling,
- Block::SpruceSapling,
- Block::BirchSapling,
- Block::JungleSapling,
- Block::AcaciaSapling,
- Block::DarkOakSapling,
- Block::PaleOakSapling,
- Block::Azalea,
- Block::FloweringAzalea,
- Block::MangrovePropagule,
- Block::CherrySapling,
Block::OakButton,
Block::SpruceButton,
Block::BirchButton,
@@ -2026,16 +2012,6 @@ pub static MINEABLE_HOE: LazyLock<HashSet<Block>> = LazyLock::new(|| {
Block::Shroomlight,
Block::Sponge,
Block::WetSponge,
- Block::JungleLeaves,
- Block::OakLeaves,
- Block::SpruceLeaves,
- Block::PaleOakLeaves,
- Block::DarkOakLeaves,
- Block::AcaciaLeaves,
- Block::BirchLeaves,
- Block::AzaleaLeaves,
- Block::FloweringAzaleaLeaves,
- Block::MangroveLeaves,
Block::SculkSensor,
Block::CalibratedSculkSensor,
Block::MossBlock,
@@ -2046,7 +2022,16 @@ pub static MINEABLE_HOE: LazyLock<HashSet<Block>> = LazyLock::new(|| {
Block::SculkCatalyst,
Block::SculkVein,
Block::SculkShrieker,
- Block::PinkPetals,
+ Block::JungleLeaves,
+ Block::OakLeaves,
+ Block::SpruceLeaves,
+ Block::PaleOakLeaves,
+ Block::DarkOakLeaves,
+ Block::AcaciaLeaves,
+ Block::BirchLeaves,
+ Block::AzaleaLeaves,
+ Block::FloweringAzaleaLeaves,
+ Block::MangroveLeaves,
Block::CherryLeaves,
])
});
@@ -2917,6 +2902,29 @@ pub static PLANKS: LazyLock<HashSet<Block>> = LazyLock::new(|| {
Block::CherryPlanks,
])
});
+pub static PLAYS_AMBIENT_DESERT_BLOCK_SOUNDS: LazyLock<HashSet<Block>> = LazyLock::new(|| {
+ HashSet::from_iter(vec![
+ Block::Sand,
+ Block::RedSand,
+ Block::Terracotta,
+ Block::WhiteTerracotta,
+ Block::OrangeTerracotta,
+ Block::MagentaTerracotta,
+ Block::LightBlueTerracotta,
+ Block::YellowTerracotta,
+ Block::LimeTerracotta,
+ Block::PinkTerracotta,
+ Block::GrayTerracotta,
+ Block::LightGrayTerracotta,
+ Block::CyanTerracotta,
+ Block::PurpleTerracotta,
+ Block::BlueTerracotta,
+ Block::BrownTerracotta,
+ Block::GreenTerracotta,
+ Block::RedTerracotta,
+ Block::BlackTerracotta,
+ ])
+});
pub static POLAR_BEARS_SPAWNABLE_ON_ALTERNATE: LazyLock<HashSet<Block>> =
LazyLock::new(|| HashSet::from_iter(vec![Block::Ice]));
pub static PORTALS: LazyLock<HashSet<Block>> = LazyLock::new(|| {
@@ -2980,6 +2988,9 @@ pub static REPLACEABLE: LazyLock<HashSet<Block>> = LazyLock::new(|| {
Block::ShortGrass,
Block::Fern,
Block::DeadBush,
+ Block::Bush,
+ Block::ShortDryGrass,
+ Block::TallDryGrass,
Block::Seagrass,
Block::TallSeagrass,
Block::Fire,
@@ -2998,9 +3009,70 @@ pub static REPLACEABLE: LazyLock<HashSet<Block>> = LazyLock::new(|| {
Block::WarpedRoots,
Block::NetherSprouts,
Block::CrimsonRoots,
+ Block::LeafLitter,
Block::HangingRoots,
])
});
+pub static REPLACEABLE_BY_MUSHROOMS: LazyLock<HashSet<Block>> = LazyLock::new(|| {
+ HashSet::from_iter(vec![
+ Block::PaleMossCarpet,
+ Block::ShortGrass,
+ Block::Fern,
+ Block::DeadBush,
+ Block::Vine,
+ Block::GlowLichen,
+ Block::Sunflower,
+ Block::Lilac,
+ Block::RoseBush,
+ Block::Peony,
+ Block::TallGrass,
+ Block::LargeFern,
+ Block::HangingRoots,
+ Block::PitcherPlant,
+ Block::Water,
+ Block::Seagrass,
+ Block::TallSeagrass,
+ Block::BrownMushroom,
+ Block::RedMushroom,
+ Block::BrownMushroomBlock,
+ Block::RedMushroomBlock,
+ Block::WarpedRoots,
+ Block::NetherSprouts,
+ Block::CrimsonRoots,
+ Block::LeafLitter,
+ Block::ShortDryGrass,
+ Block::TallDryGrass,
+ Block::Bush,
+ Block::FireflyBush,
+ Block::JungleLeaves,
+ Block::OakLeaves,
+ Block::SpruceLeaves,
+ Block::PaleOakLeaves,
+ Block::DarkOakLeaves,
+ Block::AcaciaLeaves,
+ Block::BirchLeaves,
+ Block::AzaleaLeaves,
+ Block::FloweringAzaleaLeaves,
+ Block::MangroveLeaves,
+ Block::CherryLeaves,
+ Block::Dandelion,
+ Block::OpenEyeblossom,
+ Block::Poppy,
+ Block::BlueOrchid,
+ Block::Allium,
+ Block::AzureBluet,
+ Block::RedTulip,
+ Block::OrangeTulip,
+ Block::WhiteTulip,
+ Block::PinkTulip,
+ Block::OxeyeDaisy,
+ Block::Cornflower,
+ Block::LilyOfTheValley,
+ Block::WitherRose,
+ Block::Torchflower,
+ Block::ClosedEyeblossom,
+ ])
+});
pub static REPLACEABLE_BY_TREES: LazyLock<HashSet<Block>> = LazyLock::new(|| {
HashSet::from_iter(vec![
Block::PaleMossCarpet,
@@ -3020,9 +3092,14 @@ pub static REPLACEABLE_BY_TREES: LazyLock<HashSet<Block>> = LazyLock::new(|| {
Block::Water,
Block::Seagrass,
Block::TallSeagrass,
+ Block::Bush,
+ Block::FireflyBush,
Block::WarpedRoots,
Block::NetherSprouts,
Block::CrimsonRoots,
+ Block::LeafLitter,
+ Block::ShortDryGrass,
+ Block::TallDryGrass,
Block::JungleLeaves,
Block::OakLeaves,
Block::SpruceLeaves,
@@ -3486,49 +3563,15 @@ pub static STRIDER_WARM_BLOCKS: LazyLock<HashSet<Block>> =
LazyLock::new(|| HashSet::from_iter(vec![Block::Lava]));
pub static SWORD_EFFICIENT: LazyLock<HashSet<Block>> = LazyLock::new(|| {
HashSet::from_iter(vec![
- Block::ShortGrass,
- Block::Fern,
- Block::DeadBush,
Block::Vine,
Block::GlowLichen,
- Block::Sunflower,
- Block::Lilac,
- Block::RoseBush,
- Block::Peony,
- Block::TallGrass,
- Block::LargeFern,
- Block::HangingRoots,
- Block::PitcherPlant,
- Block::BrownMushroom,
- Block::RedMushroom,
- Block::SugarCane,
Block::Pumpkin,
Block::CarvedPumpkin,
Block::JackOLantern,
Block::Melon,
- Block::AttachedPumpkinStem,
- Block::AttachedMelonStem,
- Block::LilyPad,
Block::Cocoa,
- Block::PitcherCrop,
- Block::SweetBerryBush,
- Block::CaveVines,
- Block::CaveVinesPlant,
- Block::SporeBlossom,
- Block::PinkPetals,
Block::BigDripleaf,
Block::BigDripleafStem,
- Block::SmallDripleaf,
- Block::NetherWart,
- Block::WarpedFungus,
- Block::WarpedRoots,
- Block::NetherSprouts,
- Block::CrimsonFungus,
- Block::WeepingVines,
- Block::WeepingVinesPlant,
- Block::TwistingVines,
- Block::TwistingVinesPlant,
- Block::CrimsonRoots,
Block::ChorusPlant,
Block::ChorusFlower,
Block::JungleLeaves,
@@ -3542,27 +3585,10 @@ pub static SWORD_EFFICIENT: LazyLock<HashSet<Block>> = LazyLock::new(|| {
Block::FloweringAzaleaLeaves,
Block::MangroveLeaves,
Block::CherryLeaves,
- Block::OakSapling,
- Block::SpruceSapling,
- Block::BirchSapling,
- Block::JungleSapling,
- Block::AcaciaSapling,
- Block::DarkOakSapling,
- Block::PaleOakSapling,
- Block::Azalea,
- Block::FloweringAzalea,
- Block::MangrovePropagule,
- Block::CherrySapling,
- Block::Beetroots,
- Block::Carrots,
- Block::Potatoes,
- Block::Wheat,
- Block::MelonStem,
- Block::PumpkinStem,
- Block::TorchflowerCrop,
- Block::PitcherCrop,
])
});
+pub static SWORD_INSTANTLY_MINES: LazyLock<HashSet<Block>> =
+ LazyLock::new(|| HashSet::from_iter(vec![Block::Bamboo, Block::BambooSapling]));
pub static TERRACOTTA: LazyLock<HashSet<Block>> = LazyLock::new(|| {
HashSet::from_iter(vec![
Block::Terracotta,
@@ -3682,6 +3708,7 @@ pub static WALL_POST_OVERRIDE: LazyLock<HashSet<Block>> = LazyLock::new(|| {
Block::SoulTorch,
Block::RedstoneTorch,
Block::Tripwire,
+ Block::CactusFlower,
Block::WhiteBanner,
Block::OrangeBanner,
Block::MagentaBanner,
@@ -3827,6 +3854,8 @@ pub static WITHER_IMMUNE: LazyLock<HashSet<Block>> = LazyLock::new(|| {
Block::MovingPiston,
Block::Light,
Block::ReinforcedDeepslate,
+ Block::TestBlock,
+ Block::TestInstanceBlock,
])
});
pub static WITHER_SUMMON_BASE_BLOCKS: LazyLock<HashSet<Block>> =
diff --git a/azalea-registry/src/tags/items.rs b/azalea-registry/src/tags/items.rs
index f7ec01a5..7e6758f4 100644
--- a/azalea-registry/src/tags/items.rs
+++ b/azalea-registry/src/tags/items.rs
@@ -108,8 +108,10 @@ pub static BEE_FOOD: LazyLock<HashSet<Item>> = LazyLock::new(|| {
Item::MangrovePropagule,
Item::CherryLeaves,
Item::PinkPetals,
+ Item::Wildflowers,
Item::ChorusFlower,
Item::SporeBlossom,
+ Item::CactusFlower,
])
});
pub static BIRCH_LOGS: LazyLock<HashSet<Item>> = LazyLock::new(|| {
@@ -144,6 +146,8 @@ pub static BOATS: LazyLock<HashSet<Item>> = LazyLock::new(|| {
Item::CherryChestBoat,
])
});
+pub static BOOK_CLONING_TARGET: LazyLock<HashSet<Item>> =
+ LazyLock::new(|| HashSet::from_iter(vec![Item::WritableBook]));
pub static BOOKSHELF_BOOKS: LazyLock<HashSet<Item>> = LazyLock::new(|| {
HashSet::from_iter(vec![
Item::Book,
@@ -560,6 +564,8 @@ pub static DYEABLE: LazyLock<HashSet<Item>> = LazyLock::new(|| {
Item::WolfArmor,
])
});
+pub static EGGS: LazyLock<HashSet<Item>> =
+ LazyLock::new(|| HashSet::from_iter(vec![Item::Egg, Item::BlueEgg, Item::BrownEgg]));
pub static EMERALD_ORES: LazyLock<HashSet<Item>> =
LazyLock::new(|| HashSet::from_iter(vec![Item::EmeraldOre, Item::DeepslateEmeraldOre]));
pub static ENCHANTABLE_ARMOR: LazyLock<HashSet<Item>> = LazyLock::new(|| {
@@ -985,6 +991,40 @@ pub static FISHES: LazyLock<HashSet<Item>> = LazyLock::new(|| {
Item::TropicalFish,
])
});
+pub static FLOWERS: LazyLock<HashSet<Item>> = LazyLock::new(|| {
+ HashSet::from_iter(vec![
+ Item::Sunflower,
+ Item::Lilac,
+ Item::Peony,
+ Item::RoseBush,
+ Item::PitcherPlant,
+ Item::FloweringAzaleaLeaves,
+ Item::FloweringAzalea,
+ Item::MangrovePropagule,
+ Item::CherryLeaves,
+ Item::PinkPetals,
+ Item::Wildflowers,
+ Item::ChorusFlower,
+ Item::SporeBlossom,
+ Item::CactusFlower,
+ Item::Dandelion,
+ Item::OpenEyeblossom,
+ Item::Poppy,
+ Item::BlueOrchid,
+ Item::Allium,
+ Item::AzureBluet,
+ Item::RedTulip,
+ Item::OrangeTulip,
+ Item::WhiteTulip,
+ Item::PinkTulip,
+ Item::OxeyeDaisy,
+ Item::Cornflower,
+ Item::LilyOfTheValley,
+ Item::WitherRose,
+ Item::Torchflower,
+ Item::ClosedEyeblossom,
+ ])
+});
pub static FOOT_ARMOR: LazyLock<HashSet<Item>> = LazyLock::new(|| {
HashSet::from_iter(vec![
Item::LeatherBoots,