|
@ -129,10 +129,10 @@ pub struct PlayerChangedMap2 { |
|
|
#[pso_message(0x20)]
|
|
|
#[pso_message(0x20)]
|
|
|
pub struct TellOtherPlayerMyLocation {
|
|
|
pub struct TellOtherPlayerMyLocation {
|
|
|
unknown1: u32,
|
|
|
unknown1: u32,
|
|
|
unknown2: u32,
|
|
|
|
|
|
x: f32,
|
|
|
x: f32,
|
|
|
y: f32,
|
|
|
y: f32,
|
|
|
z: f32,
|
|
|
z: f32,
|
|
|
|
|
|
unknown2: u32,
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
#[pso_message(0x21)]
|
|
|
#[pso_message(0x21)]
|
|
@ -506,15 +506,18 @@ pub struct NpcSpawn { |
|
|
data: [u8; 8],
|
|
|
data: [u8; 8],
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
//#[pso_message(0x6F)]
|
|
|
|
|
|
//pub struct PlayerJoiningGame {
|
|
|
|
|
|
|
|
|
|
|
|
//}
|
|
|
|
|
|
|
|
|
#[pso_message(0x6F)]
|
|
|
|
|
|
pub struct PlayerJoiningGame {
|
|
|
|
|
|
data: [u32; 0x81],
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
//#[pso_message(0x71)]
|
|
|
|
|
|
//pub struct PlayerJoiningGame2 {
|
|
|
|
|
|
|
|
|
#[pso_message(0x71)]
|
|
|
|
|
|
pub struct PlayerJoiningGame2 {
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
//}
|
|
|
|
|
|
|
|
|
#[pso_message(0x72)]
|
|
|
|
|
|
pub struct BurstDone {
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
#[pso_message(0x74)]
|
|
|
#[pso_message(0x74)]
|
|
|
pub struct WordSelect {
|
|
|
pub struct WordSelect {
|
|
@ -974,8 +977,9 @@ pub enum GameMessage { |
|
|
SpawningMonsters(SpawningMonsters),
|
|
|
SpawningMonsters(SpawningMonsters),
|
|
|
PlayerTelepipe(PlayerTelepipe),
|
|
|
PlayerTelepipe(PlayerTelepipe),
|
|
|
NpcSpawn(NpcSpawn),
|
|
|
NpcSpawn(NpcSpawn),
|
|
|
//PlayerJoiningGame(PlayerJoiningGame),
|
|
|
|
|
|
//PlayerJoiningGame2(PlayerJoiningGame2),
|
|
|
|
|
|
|
|
|
PlayerJoiningGame(PlayerJoiningGame),
|
|
|
|
|
|
PlayerJoiningGame2(PlayerJoiningGame2),
|
|
|
|
|
|
BurstDone(BurstDone),
|
|
|
WordSelect(WordSelect),
|
|
|
WordSelect(WordSelect),
|
|
|
PlayerChangedFloor(PlayerChangedFloor),
|
|
|
PlayerChangedFloor(PlayerChangedFloor),
|
|
|
KillMonster(KillMonster),
|
|
|
KillMonster(KillMonster),
|
|
@ -1134,8 +1138,9 @@ impl PSOPacketData for GameMessage { |
|
|
SpawningMonsters::CMD => Ok(GameMessage::SpawningMonsters(SpawningMonsters::from_bytes(&mut cur)?)),
|
|
|
SpawningMonsters::CMD => Ok(GameMessage::SpawningMonsters(SpawningMonsters::from_bytes(&mut cur)?)),
|
|
|
PlayerTelepipe::CMD => Ok(GameMessage::PlayerTelepipe(PlayerTelepipe::from_bytes(&mut cur)?)),
|
|
|
PlayerTelepipe::CMD => Ok(GameMessage::PlayerTelepipe(PlayerTelepipe::from_bytes(&mut cur)?)),
|
|
|
NpcSpawn::CMD => Ok(GameMessage::NpcSpawn(NpcSpawn::from_bytes(&mut cur)?)),
|
|
|
NpcSpawn::CMD => Ok(GameMessage::NpcSpawn(NpcSpawn::from_bytes(&mut cur)?)),
|
|
|
//PlayerJoiningGame::CMD => Ok(GameMessage::PlayerJoiningGame(PlayerJoiningGame::from_bytes(&mut cur)?)),
|
|
|
|
|
|
//PlayerJoiningGame2::CMD => Ok(GameMessage::PlayerJoiningGame2(PlayerJoiningGame2::from_bytes(&mut cur)?)),
|
|
|
|
|
|
|
|
|
PlayerJoiningGame::CMD => Ok(GameMessage::PlayerJoiningGame(PlayerJoiningGame::from_bytes(&mut cur)?)),
|
|
|
|
|
|
PlayerJoiningGame2::CMD => Ok(GameMessage::PlayerJoiningGame2(PlayerJoiningGame2::from_bytes(&mut cur)?)),
|
|
|
|
|
|
BurstDone::CMD => Ok(GameMessage::BurstDone(BurstDone::from_bytes(&mut cur)?)),
|
|
|
WordSelect::CMD => Ok(GameMessage::WordSelect(WordSelect::from_bytes(&mut cur)?)),
|
|
|
WordSelect::CMD => Ok(GameMessage::WordSelect(WordSelect::from_bytes(&mut cur)?)),
|
|
|
PlayerChangedFloor::CMD => Ok(GameMessage::PlayerChangedFloor(PlayerChangedFloor::from_bytes(&mut cur)?)),
|
|
|
PlayerChangedFloor::CMD => Ok(GameMessage::PlayerChangedFloor(PlayerChangedFloor::from_bytes(&mut cur)?)),
|
|
|
KillMonster::CMD => Ok(GameMessage::KillMonster(KillMonster::from_bytes(&mut cur)?)),
|
|
|
KillMonster::CMD => Ok(GameMessage::KillMonster(KillMonster::from_bytes(&mut cur)?)),
|
|
@ -1296,8 +1301,9 @@ impl PSOPacketData for GameMessage { |
|
|
GameMessage::SpawningMonsters(data) => data.as_bytes(),
|
|
|
GameMessage::SpawningMonsters(data) => data.as_bytes(),
|
|
|
GameMessage::PlayerTelepipe(data) => data.as_bytes(),
|
|
|
GameMessage::PlayerTelepipe(data) => data.as_bytes(),
|
|
|
GameMessage::NpcSpawn(data) => data.as_bytes(),
|
|
|
GameMessage::NpcSpawn(data) => data.as_bytes(),
|
|
|
//GameMessage::PlayerJoiningGame(data) => data.as_bytes(),
|
|
|
|
|
|
//GameMessage::PlayerJoiningGame2(data) => data.as_bytes(),
|
|
|
|
|
|
|
|
|
GameMessage::PlayerJoiningGame(data) => data.as_bytes(),
|
|
|
|
|
|
GameMessage::PlayerJoiningGame2(data) => data.as_bytes(),
|
|
|
|
|
|
GameMessage::BurstDone(data) => data.as_bytes(),
|
|
|
GameMessage::WordSelect(data) => data.as_bytes(),
|
|
|
GameMessage::WordSelect(data) => data.as_bytes(),
|
|
|
GameMessage::PlayerChangedFloor(data) => data.as_bytes(),
|
|
|
GameMessage::PlayerChangedFloor(data) => data.as_bytes(),
|
|
|
GameMessage::KillMonster(data) => data.as_bytes(),
|
|
|
GameMessage::KillMonster(data) => data.as_bytes(),
|
|
|