|
@ -135,7 +135,8 @@ pub struct TellOtherPlayerMyLocation { |
|
|
x: f32,
|
|
|
x: f32,
|
|
|
y: f32,
|
|
|
y: f32,
|
|
|
z: f32,
|
|
|
z: f32,
|
|
|
unknown2: u32,
|
|
|
|
|
|
|
|
|
rotation: u16,
|
|
|
|
|
|
unknown2: u16,
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
#[pso_message(0x21)]
|
|
|
#[pso_message(0x21)]
|
|
@ -263,7 +264,7 @@ pub struct PlayerPBDonation { |
|
|
#[pso_message(0x37)]
|
|
|
#[pso_message(0x37)]
|
|
|
pub struct PlayerInitiatedPB {
|
|
|
pub struct PlayerInitiatedPB {
|
|
|
pb_amount: u8,
|
|
|
pb_amount: u8,
|
|
|
unknown1: u32,
|
|
|
|
|
|
|
|
|
unknown1: [u8; 4],
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
#[pso_message(0x3A)]
|
|
|
#[pso_message(0x3A)]
|
|
@ -278,7 +279,8 @@ pub struct PlayerSpawnedIntoArea { |
|
|
|
|
|
|
|
|
#[pso_message(0x3E)]
|
|
|
#[pso_message(0x3E)]
|
|
|
pub struct PlayerStopped {
|
|
|
pub struct PlayerStopped {
|
|
|
unknown1: u32,
|
|
|
|
|
|
|
|
|
unknown1: [u8; 2],
|
|
|
|
|
|
rotation: u16,
|
|
|
area: u16,
|
|
|
area: u16,
|
|
|
room: u16,
|
|
|
room: u16,
|
|
|
x: f32,
|
|
|
x: f32,
|
|
@ -288,8 +290,10 @@ pub struct PlayerStopped { |
|
|
|
|
|
|
|
|
#[pso_message(0x3F)]
|
|
|
#[pso_message(0x3F)]
|
|
|
pub struct PlayerLoadedIn {
|
|
|
pub struct PlayerLoadedIn {
|
|
|
unknown1: u32,
|
|
|
|
|
|
unknown2: u32,
|
|
|
|
|
|
|
|
|
unknown1: [u8; 2],
|
|
|
|
|
|
rotation: u16,
|
|
|
|
|
|
area: u16,
|
|
|
|
|
|
room: u16,
|
|
|
x: f32,
|
|
|
x: f32,
|
|
|
y: f32,
|
|
|
y: f32,
|
|
|
z: f32,
|
|
|
z: f32,
|
|
@ -299,7 +303,7 @@ pub struct PlayerLoadedIn { |
|
|
pub struct PlayerWalking {
|
|
|
pub struct PlayerWalking {
|
|
|
x: f32,
|
|
|
x: f32,
|
|
|
z: f32,
|
|
|
z: f32,
|
|
|
unknown: f32,
|
|
|
|
|
|
|
|
|
stance: u32,
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
#[pso_message(0x42)]
|
|
|
#[pso_message(0x42)]
|
|
@ -310,22 +314,26 @@ pub struct PlayerRunning { |
|
|
|
|
|
|
|
|
#[pso_message(0x43)]
|
|
|
#[pso_message(0x43)]
|
|
|
pub struct ComboStep1 {
|
|
|
pub struct ComboStep1 {
|
|
|
data: [u8; 4],
|
|
|
|
|
|
|
|
|
rotation: u16,
|
|
|
|
|
|
attack: u16,
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
#[pso_message(0x44)]
|
|
|
#[pso_message(0x44)]
|
|
|
pub struct ComboStep2 {
|
|
|
pub struct ComboStep2 {
|
|
|
data: [u8; 4],
|
|
|
|
|
|
|
|
|
rotation: u16,
|
|
|
|
|
|
attack: u16,
|
|
|
|
|
|
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
#[pso_message(0x45)]
|
|
|
#[pso_message(0x45)]
|
|
|
pub struct ComboStep3 {
|
|
|
pub struct ComboStep3 {
|
|
|
data: [u8; 4],
|
|
|
|
|
|
|
|
|
rotation: u16,
|
|
|
|
|
|
attack: u16,
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
#[pso_message(0x46)]
|
|
|
#[pso_message(0x46)]
|
|
|
pub struct ComboStepDone {
|
|
|
|
|
|
data: [u8; 4],
|
|
|
|
|
|
|
|
|
pub struct TargetsHit {
|
|
|
|
|
|
targets: u32, // thats a lot of targets!
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
#[pso_message(0x47)]
|
|
|
#[pso_message(0x47)]
|
|
@ -1003,7 +1011,7 @@ pub enum GameMessage { |
|
|
ComboStep1(ComboStep1),
|
|
|
ComboStep1(ComboStep1),
|
|
|
ComboStep2(ComboStep2),
|
|
|
ComboStep2(ComboStep2),
|
|
|
ComboStep3(ComboStep3),
|
|
|
ComboStep3(ComboStep3),
|
|
|
ComboStepDone(ComboStepDone),
|
|
|
|
|
|
|
|
|
TargetsHit(TargetsHit),
|
|
|
PlayerTechCast(PlayerTechCast),
|
|
|
PlayerTechCast(PlayerTechCast),
|
|
|
PlayerTechDone(PlayerTechDone),
|
|
|
PlayerTechDone(PlayerTechDone),
|
|
|
PlayerPBUsed(PlayerPBUsed),
|
|
|
PlayerPBUsed(PlayerPBUsed),
|
|
@ -1168,7 +1176,7 @@ impl PSOPacketData for GameMessage { |
|
|
ComboStep1::CMD => Ok(GameMessage::ComboStep1(ComboStep1::from_bytes(&mut cur)?)),
|
|
|
ComboStep1::CMD => Ok(GameMessage::ComboStep1(ComboStep1::from_bytes(&mut cur)?)),
|
|
|
ComboStep2::CMD => Ok(GameMessage::ComboStep2(ComboStep2::from_bytes(&mut cur)?)),
|
|
|
ComboStep2::CMD => Ok(GameMessage::ComboStep2(ComboStep2::from_bytes(&mut cur)?)),
|
|
|
ComboStep3::CMD => Ok(GameMessage::ComboStep3(ComboStep3::from_bytes(&mut cur)?)),
|
|
|
ComboStep3::CMD => Ok(GameMessage::ComboStep3(ComboStep3::from_bytes(&mut cur)?)),
|
|
|
ComboStepDone::CMD => Ok(GameMessage::ComboStepDone(ComboStepDone::from_bytes(&mut cur)?)),
|
|
|
|
|
|
|
|
|
TargetsHit::CMD => Ok(GameMessage::TargetsHit(TargetsHit::from_bytes(&mut cur)?)),
|
|
|
PlayerTechCast::CMD => Ok(GameMessage::PlayerTechCast(PlayerTechCast::from_bytes(&mut cur)?)),
|
|
|
PlayerTechCast::CMD => Ok(GameMessage::PlayerTechCast(PlayerTechCast::from_bytes(&mut cur)?)),
|
|
|
PlayerTechDone::CMD => Ok(GameMessage::PlayerTechDone(PlayerTechDone::from_bytes(&mut cur)?)),
|
|
|
PlayerTechDone::CMD => Ok(GameMessage::PlayerTechDone(PlayerTechDone::from_bytes(&mut cur)?)),
|
|
|
PlayerPBUsed::CMD => Ok(GameMessage::PlayerPBUsed(PlayerPBUsed::from_bytes(&mut cur)?)),
|
|
|
PlayerPBUsed::CMD => Ok(GameMessage::PlayerPBUsed(PlayerPBUsed::from_bytes(&mut cur)?)),
|
|
@ -1335,7 +1343,7 @@ impl PSOPacketData for GameMessage { |
|
|
GameMessage::ComboStep1(data) => data.as_bytes(),
|
|
|
GameMessage::ComboStep1(data) => data.as_bytes(),
|
|
|
GameMessage::ComboStep2(data) => data.as_bytes(),
|
|
|
GameMessage::ComboStep2(data) => data.as_bytes(),
|
|
|
GameMessage::ComboStep3(data) => data.as_bytes(),
|
|
|
GameMessage::ComboStep3(data) => data.as_bytes(),
|
|
|
GameMessage::ComboStepDone(data) => data.as_bytes(),
|
|
|
|
|
|
|
|
|
GameMessage::TargetsHit(data) => data.as_bytes(),
|
|
|
GameMessage::PlayerTechCast(data) => data.as_bytes(),
|
|
|
GameMessage::PlayerTechCast(data) => data.as_bytes(),
|
|
|
GameMessage::PlayerTechDone(data) => data.as_bytes(),
|
|
|
GameMessage::PlayerTechDone(data) => data.as_bytes(),
|
|
|
GameMessage::PlayerPBUsed(data) => data.as_bytes(),
|
|
|
GameMessage::PlayerPBUsed(data) => data.as_bytes(),
|
|
|