From 58b8fa132c37807ab85dafc6d248e4e3f7c59963 Mon Sep 17 00:00:00 2001 From: andy Date: Wed, 8 Feb 2023 01:49:49 +0000 Subject: [PATCH 1/3] floor limit packet --- src/packet/messages.rs | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/src/packet/messages.rs b/src/packet/messages.rs index 7ac1fa2..e03b818 100644 --- a/src/packet/messages.rs +++ b/src/packet/messages.rs @@ -501,12 +501,11 @@ pub struct MagAnimation { unknown1: u16, } -//#[pso_message(0x63)] -//pub struct FloorItemLimitItemDeletion { -// client_id: u16, -// item_id: u8, -// amount: u8, -//} +#[pso_message(0x63)] +pub struct FloorItemLimitItemDeletion { + client_item_id: u32, + map_area: u16, +} #[pso_message(0x66)] pub struct PlayerUsedStarAtomizer { @@ -1166,7 +1165,7 @@ pub enum GameMessage { ItemDrop(ItemDrop), RequestItem(RequestItem), MagAnimation(MagAnimation), - //FloorItemLimitItemDeletion(FloorItemLimitItemDeletion), + FloorItemLimitItemDeletion(FloorItemLimitItemDeletion), PlayerUsedStarAtomizer(PlayerUsedStarAtomizer), SpawningMonsters(SpawningMonsters), PlayerTelepipe(PlayerTelepipe), @@ -1333,7 +1332,7 @@ impl PSOPacketData for GameMessage { ItemDrop::CMD => Ok(GameMessage::ItemDrop(ItemDrop::from_bytes(&mut cur)?)), RequestItem::CMD => Ok(GameMessage::RequestItem(RequestItem::from_bytes(&mut cur)?)), MagAnimation::CMD => Ok(GameMessage::MagAnimation(MagAnimation::from_bytes(&mut cur)?)), - //FloorItemLimitItemDeletion::CMD => Ok(GameMessage::FloorItemLimitItemDeletion(FloorItemLimitItemDeletion::from_bytes(&mut cur)?)), + FloorItemLimitItemDeletion::CMD => Ok(GameMessage::FloorItemLimitItemDeletion(FloorItemLimitItemDeletion::from_bytes(&mut cur)?)), PlayerUsedStarAtomizer::CMD => Ok(GameMessage::PlayerUsedStarAtomizer(PlayerUsedStarAtomizer::from_bytes(&mut cur)?)), SpawningMonsters::CMD => Ok(GameMessage::SpawningMonsters(SpawningMonsters::from_bytes(&mut cur)?)), PlayerTelepipe::CMD => Ok(GameMessage::PlayerTelepipe(PlayerTelepipe::from_bytes(&mut cur)?)), @@ -1502,7 +1501,7 @@ impl PSOPacketData for GameMessage { GameMessage::ItemDrop(data) => data.as_bytes(), GameMessage::RequestItem(data) => data.as_bytes(), GameMessage::MagAnimation(data) => data.as_bytes(), - //GameMessage::FloorItemLimitItemDeletion(data) => data.as_bytes(), + GameMessage::FloorItemLimitItemDeletion(data) => data.as_bytes(), GameMessage::PlayerUsedStarAtomizer(data) => data.as_bytes(), GameMessage::SpawningMonsters(data) => data.as_bytes(), GameMessage::PlayerTelepipe(data) => data.as_bytes(), From eff9fba20a8b1a266ecb2c6f00e3ff2893c27f50 Mon Sep 17 00:00:00 2001 From: andy Date: Wed, 8 Feb 2023 01:50:09 +0000 Subject: [PATCH 2/3] very important packet data --- src/packet/messages.rs | 1 + 1 file changed, 1 insertion(+) diff --git a/src/packet/messages.rs b/src/packet/messages.rs index e03b818..5db779d 100644 --- a/src/packet/messages.rs +++ b/src/packet/messages.rs @@ -947,6 +947,7 @@ pub struct DropCoordinates { x: f32, z: f32, item_id: u32, + amount: u32, } #[pso_message(0xC4)] From 2dd1161ae79db784bac5c60dc7bd74a407075385 Mon Sep 17 00:00:00 2001 From: andy Date: Wed, 8 Feb 2023 23:36:00 +0000 Subject: [PATCH 3/3] rename to match the rest of the code --- src/packet/messages.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/packet/messages.rs b/src/packet/messages.rs index 5db779d..09a9e44 100644 --- a/src/packet/messages.rs +++ b/src/packet/messages.rs @@ -503,7 +503,7 @@ pub struct MagAnimation { #[pso_message(0x63)] pub struct FloorItemLimitItemDeletion { - client_item_id: u32, + item_id: u32, map_area: u16, }