From 5a38ea10910bbcc51714cf52c0535cac646a95c1 Mon Sep 17 00:00:00 2001 From: ice_iix Date: Mon, 28 Dec 2020 11:57:59 -0800 Subject: [PATCH] 1.16.4-1.14: fix Particle_f64/Data packet fields, closes #377 --- protocol/src/protocol/packet.rs | 42 ++++++++++++++++------- protocol/src/protocol/versions/v19w02a.rs | 2 +- protocol/src/protocol/versions/v1_13_2.rs | 2 +- 3 files changed, 32 insertions(+), 14 deletions(-) diff --git a/protocol/src/protocol/packet.rs b/protocol/src/protocol/packet.rs index cb807b7..386080a 100644 --- a/protocol/src/protocol/packet.rs +++ b/protocol/src/protocol/packet.rs @@ -1173,12 +1173,12 @@ state_packets!( field offset_z: f32 =, field speed: f32 =, field count: i32 =, - field block_state: VarInt = when(|p: &Particle_f64| p.particle_id == 3 || p.particle_id == 20), - field red: f32 = when(|p: &Particle_f64| p.particle_id == 11), - field green: f32 = when(|p: &Particle_f64| p.particle_id == 11), - field blue: f32 = when(|p: &Particle_f64| p.particle_id == 11), - field scale: f32 = when(|p: &Particle_f64| p.particle_id == 11), - field item: Option = when(|p: &Particle_f64| p.particle_id == 27), + field block_state: VarInt = when(|p: &Particle_f64| p.particle_id == 3 || p.particle_id == 23), + field red: f32 = when(|p: &Particle_f64| p.particle_id == 14), + field green: f32 = when(|p: &Particle_f64| p.particle_id == 14), + field blue: f32 = when(|p: &Particle_f64| p.particle_id == 14), + field scale: f32 = when(|p: &Particle_f64| p.particle_id == 14), + field item: Option = when(|p: &Particle_f64| p.particle_id == 32), } packet Particle_Data { field particle_id: i32 =, @@ -1191,12 +1191,30 @@ state_packets!( field offset_z: f32 =, field speed: f32 =, field count: i32 =, - field block_state: VarInt = when(|p: &Particle_Data| p.particle_id == 3 || p.particle_id == 20), - field red: f32 = when(|p: &Particle_Data| p.particle_id == 11), - field green: f32 = when(|p: &Particle_Data| p.particle_id == 11), - field blue: f32 = when(|p: &Particle_Data| p.particle_id == 11), - field scale: f32 = when(|p: &Particle_Data| p.particle_id == 11), - field item: Option = when(|p: &Particle_Data| p.particle_id == 27), + field block_state: VarInt = when(|p: &Particle_Data| p.particle_id == 3 || p.particle_id == 23), + field red: f32 = when(|p: &Particle_Data| p.particle_id == 14), + field green: f32 = when(|p: &Particle_Data| p.particle_id == 14), + field blue: f32 = when(|p: &Particle_Data| p.particle_id == 14), + field scale: f32 = when(|p: &Particle_Data| p.particle_id == 14), + field item: Option = when(|p: &Particle_Data| p.particle_id == 32), + } + packet Particle_Data13 { + field particle_id: i32 =, + field long_distance: bool =, + field x: f32 =, + field y: f32 =, + field z: f32 =, + field offset_x: f32 =, + field offset_y: f32 =, + field offset_z: f32 =, + field speed: f32 =, + field count: i32 =, + field block_state: VarInt = when(|p: &Particle_Data13| p.particle_id == 3 || p.particle_id == 20), + field red: f32 = when(|p: &Particle_Data13| p.particle_id == 11), + field green: f32 = when(|p: &Particle_Data13| p.particle_id == 11), + field blue: f32 = when(|p: &Particle_Data13| p.particle_id == 11), + field scale: f32 = when(|p: &Particle_Data13| p.particle_id == 11), + field item: Option = when(|p: &Particle_Data13| p.particle_id == 27), } packet Particle_VarIntArray { field particle_id: i32 =, diff --git a/protocol/src/protocol/versions/v19w02a.rs b/protocol/src/protocol/versions/v19w02a.rs index 47c3ea6..e78ad3c 100644 --- a/protocol/src/protocol/versions/v19w02a.rs +++ b/protocol/src/protocol/versions/v19w02a.rs @@ -89,7 +89,7 @@ protocol_packet_ids!( 0x21 => KeepAliveClientbound_i64 0x22 => ChunkData_HeightMap 0x23 => Effect - 0x24 => Particle_Data + 0x24 => Particle_Data13 0x25 => JoinGame_i32 0x26 => Maps 0x27 => Entity diff --git a/protocol/src/protocol/versions/v1_13_2.rs b/protocol/src/protocol/versions/v1_13_2.rs index fc0a0b0..021091e 100644 --- a/protocol/src/protocol/versions/v1_13_2.rs +++ b/protocol/src/protocol/versions/v1_13_2.rs @@ -89,7 +89,7 @@ protocol_packet_ids!( 0x21 => KeepAliveClientbound_i64 0x22 => ChunkData 0x23 => Effect - 0x24 => Particle_Data + 0x24 => Particle_Data13 0x25 => JoinGame_i32 0x26 => Maps 0x27 => Entity