diff options
| author | mat <27899617+mat-1@users.noreply.github.com> | 2024-04-23 10:34:50 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-04-23 10:34:50 -0500 |
| commit | 1d80f531b74bc3b31023753acb81b35efcdadd73 (patch) | |
| tree | 675635c7c41fbb456e3e0dd7b9f09c7211d356f0 /azalea-entity/src/data.rs | |
| parent | 0ddad8bd9c7c0e8846aec8bc90c95416418c9a63 (diff) | |
| download | azalea-drasl-1d80f531b74bc3b31023753acb81b35efcdadd73.tar.xz | |
1.20.5 (#127)
* 23w51b
* make recalculate_near_end_of_path public
so other plugins can do .after(recalculate_near_end_of_path)
* update to 24w03a i think
* start implementing 24w13a
* registries work (but a lot of packets are still broken)
* fix recipes and commands packets
* i love codecs :D i am not going insane :D mojang's java is very readable :D
* item components are "implemented" meowmeowmeowmeowmeowmeowmeowmeowmeowmeowmeowmeowmeowmeowmeowmeowmeowmeow
* update to 1.20.5-pre3
* fix all the broken packets and clippy (mojang please don't do an update like this again or i will murder someone)
* 1.20.5-rc1
* fix failing tests
* 1.20.5
Diffstat (limited to 'azalea-entity/src/data.rs')
| -rwxr-xr-x | azalea-entity/src/data.rs | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/azalea-entity/src/data.rs b/azalea-entity/src/data.rs index b0a05e74..45c761e7 100755 --- a/azalea-entity/src/data.rs +++ b/azalea-entity/src/data.rs @@ -6,7 +6,6 @@ use azalea_buf::{ use azalea_chat::FormattedText; use azalea_core::{ direction::Direction, - particle::Particle, position::{BlockPos, GlobalPos, Vec3}, }; use azalea_inventory::ItemSlot; @@ -17,6 +16,8 @@ use nohash_hasher::IntSet; use std::io::{Cursor, Write}; use uuid::Uuid; +use crate::particle::Particle; + #[derive(Clone, Debug, Deref)] pub struct EntityMetadataItems(Vec<EntityDataItem>); @@ -83,15 +84,18 @@ pub enum EntityDataValue { OptionalBlockState(azalea_block::BlockState), CompoundTag(simdnbt::owned::NbtCompound), Particle(Particle), + Particles(Vec<Particle>), VillagerData(VillagerData), // 0 for absent; 1 + actual value otherwise. Used for entity IDs. OptionalUnsignedInt(OptionalUnsignedInt), Pose(Pose), CatVariant(azalea_registry::CatVariant), + WolfVariant(azalea_registry::WolfVariant), FrogVariant(azalea_registry::FrogVariant), OptionalGlobalPos(Option<GlobalPos>), PaintingVariant(azalea_registry::PaintingVariant), SnifferState(SnifferState), + ArmadilloState(ArmadilloStateKind), Vector3(Vec3), Quaternion(Quaternion), } @@ -107,6 +111,16 @@ pub struct Quaternion { pub w: f32, } +// mojang just calls this ArmadilloState but i added "Kind" since otherwise it +// collides with a name in metadata.rs +#[derive(Clone, Debug, Copy, Default, McBuf)] +pub enum ArmadilloStateKind { + #[default] + Idle, + Rolling, + Scared, +} + impl McBufReadable for OptionalUnsignedInt { fn read_from(buf: &mut Cursor<&[u8]>) -> Result<Self, BufReadError> { let val = u32::var_read_from(buf)?; |
