From d1c5e30ce08cb4a6615d75e5fc7b88ceea797328 Mon Sep 17 00:00:00 2001 From: andy Date: Sun, 15 May 2022 17:49:11 +0000 Subject: [PATCH] exp steal packet --- src/packet/messages.rs | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/src/packet/messages.rs b/src/packet/messages.rs index 7d1ff8b..7ac1fa2 100644 --- a/src/packet/messages.rs +++ b/src/packet/messages.rs @@ -960,10 +960,12 @@ pub struct PlayerUsedMedicalCenter { } -//#[pso_message(0xC6)] -//pub struct ExperienceSteal { - -//} +#[pso_message(0xC6)] +pub struct ExperienceSteal { + client2: u8, + target2: u8, + enemy_id: u16, +} #[pso_message(0xC7)] pub struct ChargeAttack { @@ -1222,7 +1224,7 @@ pub enum GameMessage { DropCoordinates(DropCoordinates), SortItems(SortItems), PlayerUsedMedicalCenter(PlayerUsedMedicalCenter), - //ExperienceSteal(ExperienceSteal), + ExperienceSteal(ExperienceSteal), ChargeAttack(ChargeAttack), RequestExp(RequestExp), //QuestRewardMeseta(QuestRewardMeseta), @@ -1389,7 +1391,7 @@ impl PSOPacketData for GameMessage { DropCoordinates::CMD => Ok(GameMessage::DropCoordinates(DropCoordinates::from_bytes(&mut cur)?)), SortItems::CMD => Ok(GameMessage::SortItems(SortItems::from_bytes(&mut cur)?)), PlayerUsedMedicalCenter::CMD => Ok(GameMessage::PlayerUsedMedicalCenter(PlayerUsedMedicalCenter::from_bytes(&mut cur)?)), - //ExperienceSteal::CMD => Ok(GameMessage::ExperienceSteal(ExperienceSteal::from_bytes(&mut cur)?)), + ExperienceSteal::CMD => Ok(GameMessage::ExperienceSteal(ExperienceSteal::from_bytes(&mut cur)?)), ChargeAttack::CMD => Ok(GameMessage::ChargeAttack(ChargeAttack::from_bytes(&mut cur)?)), RequestExp::CMD => Ok(GameMessage::RequestExp(RequestExp::from_bytes(&mut cur)?)), //QuestRewardMeseta::CMD => Ok(GameMessage::QuestRewardMeseta(QuestRewardMeseta::from_bytes(&mut cur)?)), @@ -1558,7 +1560,7 @@ impl PSOPacketData for GameMessage { GameMessage::DropCoordinates(data) => data.as_bytes(), GameMessage::SortItems(data) => data.as_bytes(), GameMessage::PlayerUsedMedicalCenter(data) => data.as_bytes(), - //GameMessage::ExperienceSteal(data) => data.as_bytes(), + GameMessage::ExperienceSteal(data) => data.as_bytes(), GameMessage::ChargeAttack(data) => data.as_bytes(), GameMessage::RequestExp(data) => data.as_bytes(), //GameMessage::QuestRewardMeseta(data) => data.as_bytes(),