aboutsummaryrefslogtreecommitdiff
path: root/azalea-protocol/src/packets/game/clientbound_level_particles_packet.rs
diff options
context:
space:
mode:
authormat <27899617+mat-1@users.noreply.github.com>2024-04-23 10:34:50 -0500
committerGitHub <noreply@github.com>2024-04-23 10:34:50 -0500
commit1d80f531b74bc3b31023753acb81b35efcdadd73 (patch)
tree675635c7c41fbb456e3e0dd7b9f09c7211d356f0 /azalea-protocol/src/packets/game/clientbound_level_particles_packet.rs
parent0ddad8bd9c7c0e8846aec8bc90c95416418c9a63 (diff)
downloadazalea-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-protocol/src/packets/game/clientbound_level_particles_packet.rs')
-rwxr-xr-xazalea-protocol/src/packets/game/clientbound_level_particles_packet.rs60
1 files changed, 5 insertions, 55 deletions
diff --git a/azalea-protocol/src/packets/game/clientbound_level_particles_packet.rs b/azalea-protocol/src/packets/game/clientbound_level_particles_packet.rs
index 7cae607e..437eb68e 100755
--- a/azalea-protocol/src/packets/game/clientbound_level_particles_packet.rs
+++ b/azalea-protocol/src/packets/game/clientbound_level_particles_packet.rs
@@ -1,12 +1,9 @@
-use azalea_buf::{BufReadError, McBufReadable, McBufVarReadable, McBufVarWritable, McBufWritable};
-use azalea_core::particle::ParticleData;
+use azalea_buf::McBuf;
use azalea_protocol_macros::ClientboundGamePacket;
-use std::io::{Cursor, Write};
+use azalea_registry::ParticleKind;
-#[derive(Clone, Debug, ClientboundGamePacket)]
+#[derive(Clone, Debug, McBuf, ClientboundGamePacket)]
pub struct ClientboundLevelParticlesPacket {
- #[var]
- pub particle_id: u32,
pub override_limiter: bool,
pub x: f64,
pub y: f64,
@@ -15,54 +12,7 @@ pub struct ClientboundLevelParticlesPacket {
pub y_dist: f32,
pub z_dist: f32,
pub max_speed: f32,
+ #[var]
pub count: u32,
- pub data: ParticleData,
-}
-
-impl McBufReadable for ClientboundLevelParticlesPacket {
- fn read_from(buf: &mut Cursor<&[u8]>) -> Result<Self, BufReadError> {
- let particle_id = u32::var_read_from(buf)?;
- let override_limiter = bool::read_from(buf)?;
- let x = f64::read_from(buf)?;
- let y = f64::read_from(buf)?;
- let z = f64::read_from(buf)?;
- let x_dist = f32::read_from(buf)?;
- let y_dist = f32::read_from(buf)?;
- let z_dist = f32::read_from(buf)?;
- let max_speed = f32::read_from(buf)?;
- let count = u32::read_from(buf)?;
-
- let data = ParticleData::read_from_id(buf, particle_id)?;
-
- Ok(Self {
- particle_id,
- override_limiter,
- x,
- y,
- z,
- x_dist,
- y_dist,
- z_dist,
- max_speed,
- count,
- data,
- })
- }
-}
-
-impl McBufWritable for ClientboundLevelParticlesPacket {
- fn write_into(&self, buf: &mut impl Write) -> Result<(), std::io::Error> {
- self.particle_id.var_write_into(buf)?;
- self.override_limiter.write_into(buf)?;
- self.x.write_into(buf)?;
- self.y.write_into(buf)?;
- self.z.write_into(buf)?;
- self.x_dist.write_into(buf)?;
- self.y_dist.write_into(buf)?;
- self.z_dist.write_into(buf)?;
- self.max_speed.write_into(buf)?;
- self.count.write_into(buf)?;
- self.data.write_without_id(buf)?;
- Ok(())
- }
+ pub particle: ParticleKind,
}