aboutsummaryrefslogtreecommitdiff
path: root/azalea-entity/src/particle.rs
diff options
context:
space:
mode:
authormat <27899617+mat-1@users.noreply.github.com>2024-11-27 19:31:40 -0600
committerGitHub <noreply@github.com>2024-11-27 19:31:40 -0600
commit08958c2278b15ebeac8a964f392ebb792e479b61 (patch)
tree4ae3664cea38d7fd1a8f1e95ed06fac04ffe519e /azalea-entity/src/particle.rs
parent139d77d3c2b0922fba5e9d4fa2bd9819d78bd773 (diff)
downloadazalea-drasl-08958c2278b15ebeac8a964f392ebb792e479b61.tar.xz
Refactor azalea-protocol (#190)
* start updating to 1.21.4 * fix block codegen and stop using block data from burger * rename packet related modules and structs to be simpler * ItemSlot -> ItemStack for more consistency with mojmap * .get() -> .into_packet() * simplify declare_state_packets by removing packet ids * rename read_from and write_into to azalea_read and azalea_write * rename McBufReadable and McBufWritable to AzaleaRead and AzaleaWrite * McBuf -> AzBuf * remove most uses of into_variant * update codegen and use resourcelocation names for packets * implement #[limit(i)] attribute for AzBuf derive macro * fixes for 1.21.4 * fix examples * update some physics code and fix ChatType * remove unused imports in codegen * re-add some things to migrate.py and update +mc version numbers automatically * downgrade to 1.21.3 lol
Diffstat (limited to 'azalea-entity/src/particle.rs')
-rwxr-xr-xazalea-entity/src/particle.rs27
1 files changed, 14 insertions, 13 deletions
diff --git a/azalea-entity/src/particle.rs b/azalea-entity/src/particle.rs
index 6484b28f..fa948f85 100755
--- a/azalea-entity/src/particle.rs
+++ b/azalea-entity/src/particle.rs
@@ -1,13 +1,13 @@
-use azalea_buf::McBuf;
+use azalea_buf::AzBuf;
use azalea_core::position::BlockPos;
-use azalea_inventory::ItemSlot;
+use azalea_inventory::ItemStack;
use azalea_registry::ParticleKind;
use bevy_ecs::component::Component;
-// the order of this enum must be kept in-sync with ParticleKind, otherwise
+// the order of this enum must be kept in sync with ParticleKind, otherwise
// we get errors parsing particles.
/// A [`ParticleKind`] with data potentially attached to it.
-#[derive(Component, Clone, Debug, McBuf, Default)]
+#[derive(Component, Clone, Debug, AzBuf, Default)]
pub enum Particle {
AngryVillager,
Block(BlockParticle),
@@ -44,6 +44,7 @@ pub enum Particle {
Flame,
Infested,
CherryLeaves,
+ PaleOakLeaves,
SculkSoul,
SculkCharge(SculkChargeParticle),
SculkChargePop,
@@ -128,7 +129,7 @@ impl From<ParticleKind> for Particle {
/// attached (like block particles), then it's set to the default.
fn from(kind: ParticleKind) -> Self {
// this is mostly just here so it fails to compile when a new particle is added
- // to ParticleKind, since ParticleData has to be updated manually
+ // to ParticleKind, since `Particle` has to be updated manually
match kind {
ParticleKind::AngryVillager => Self::AngryVillager,
ParticleKind::Block => Self::Block(BlockParticle::default()),
@@ -247,12 +248,12 @@ impl From<ParticleKind> for Particle {
}
}
-#[derive(Debug, Clone, McBuf, Default)]
+#[derive(Debug, Clone, AzBuf, Default)]
pub struct BlockParticle {
#[var]
pub block_state: i32,
}
-#[derive(Debug, Clone, McBuf, Default)]
+#[derive(Debug, Clone, AzBuf, Default)]
pub struct DustParticle {
/// Red value, 0-1
pub red: f32,
@@ -264,7 +265,7 @@ pub struct DustParticle {
pub scale: f32,
}
-#[derive(Debug, Clone, McBuf, Default)]
+#[derive(Debug, Clone, AzBuf, Default)]
pub struct DustColorTransitionParticle {
/// Red value, 0-1
pub from_red: f32,
@@ -282,12 +283,12 @@ pub struct DustColorTransitionParticle {
pub to_blue: f32,
}
-#[derive(Debug, Clone, McBuf, Default)]
+#[derive(Debug, Clone, AzBuf, Default)]
pub struct ItemParticle {
- pub item: ItemSlot,
+ pub item: ItemStack,
}
-#[derive(Debug, Clone, McBuf, Default)]
+#[derive(Debug, Clone, AzBuf, Default)]
pub struct VibrationParticle {
pub origin: BlockPos,
pub position_type: String,
@@ -298,12 +299,12 @@ pub struct VibrationParticle {
pub ticks: u32,
}
-#[derive(Debug, Clone, McBuf, Default)]
+#[derive(Debug, Clone, AzBuf, Default)]
pub struct SculkChargeParticle {
pub roll: f32,
}
-#[derive(Debug, Clone, McBuf, Default)]
+#[derive(Debug, Clone, AzBuf, Default)]
pub struct ShriekParticle {
#[var]
pub delay: i32, // The time in ticks before the particle is displayed