|
@ -90,6 +90,12 @@ pub struct MenuSelect { |
|
|
pub item: u32,
|
|
|
pub item: u32,
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
#[pso_packet(0x09)]
|
|
|
|
|
|
pub struct MenuDetail {
|
|
|
|
|
|
pub menu: u32,
|
|
|
|
|
|
pub item: u32,
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
#[pso_packet(0x10)]
|
|
|
#[pso_packet(0x10)]
|
|
|
pub struct RoomPasswordReq {
|
|
|
pub struct RoomPasswordReq {
|
|
|
pub menu: u32,
|
|
|
pub menu: u32,
|
|
@ -219,8 +225,6 @@ pub struct AddToLobby { |
|
|
pub playerinfo: PlayerInfo,
|
|
|
pub playerinfo: PlayerInfo,
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#[pso_packet(0xC1)]
|
|
|
#[pso_packet(0xC1)]
|
|
|
pub struct CreateRoom {
|
|
|
pub struct CreateRoom {
|
|
|
unknown: [u32; 2],
|
|
|
unknown: [u32; 2],
|
|
@ -270,14 +274,6 @@ pub struct JoinRoom { |
|
|
pub unknown: u8,
|
|
|
pub unknown: u8,
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
impl JoinRoom {
|
|
|
|
|
|
/*fn new() -> JoinRoom {
|
|
|
|
|
|
JoinRoom {
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
}*/
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
#[pso_packet(0x65, manual_flag)]
|
|
|
#[pso_packet(0x65, manual_flag)]
|
|
|
pub struct AddToRoom {
|
|
|
pub struct AddToRoom {
|
|
|
pub flag: u32,
|
|
|
pub flag: u32,
|
|
@ -441,7 +437,95 @@ impl LobbyList { |
|
|
pub struct DoneBursting {
|
|
|
pub struct DoneBursting {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
#[pso_packet(0x16F)]
|
|
|
|
|
|
pub struct DoneBursting2 {
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
#[pso_packet(0x98)]
|
|
|
#[pso_packet(0x98)]
|
|
|
pub struct ClientCharacterData {
|
|
|
pub struct ClientCharacterData {
|
|
|
pub data: [u8; 2088],
|
|
|
pub data: [u8; 2088],
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
#[pso_packet(0xA2)]
|
|
|
|
|
|
pub struct RequestQuestList {
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
#[derive(PSOPacketData, Clone, Copy)]
|
|
|
|
|
|
pub struct QuestCategory {
|
|
|
|
|
|
pub menu_id: u32,
|
|
|
|
|
|
pub option_id: u32,
|
|
|
|
|
|
pub name: [u16; 32],
|
|
|
|
|
|
pub description: [u16; 122],
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
#[pso_packet(0xA2)]
|
|
|
|
|
|
pub struct QuestCategoryList {
|
|
|
|
|
|
pub quest_categories: Vec<QuestCategory>,
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#[derive(PSOPacketData, Clone, Copy)]
|
|
|
|
|
|
pub struct QuestEntry {
|
|
|
|
|
|
pub menu_id: u32,
|
|
|
|
|
|
pub category_id: u16,
|
|
|
|
|
|
pub quest_id: u16,
|
|
|
|
|
|
pub name: [u16; 32],
|
|
|
|
|
|
pub description: [u16; 122],
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
#[pso_packet(0xA2)]
|
|
|
|
|
|
pub struct QuestOptionList {
|
|
|
|
|
|
pub quests: Vec<QuestEntry>,
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
#[pso_packet(0xA3)]
|
|
|
|
|
|
pub struct QuestDetail {
|
|
|
|
|
|
description: [u16; 288]
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
#[pso_packet(0x09)]
|
|
|
|
|
|
pub struct QuestDetailRequest {
|
|
|
|
|
|
pub menu: u32,
|
|
|
|
|
|
pub category: u16,
|
|
|
|
|
|
pub quest: u16,
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
#[pso_packet(0x10)]
|
|
|
|
|
|
pub struct QuestMenuSelect {
|
|
|
|
|
|
pub menu: u32,
|
|
|
|
|
|
pub category: u16,
|
|
|
|
|
|
pub quest: u16,
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
#[pso_packet(0x44)]
|
|
|
|
|
|
pub struct QuestHeader {
|
|
|
|
|
|
pub unknown1: [u8; 0x24],
|
|
|
|
|
|
pub filename: [u8; 16],
|
|
|
|
|
|
pub length: u32,
|
|
|
|
|
|
pub name: [u8; 16],
|
|
|
|
|
|
pub unknown2: [u8; 8],
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
#[pso_packet(0x44)]
|
|
|
|
|
|
pub struct QuestFileRequest {
|
|
|
|
|
|
pub filename: [u8; 16],
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
#[pso_packet(0x13, no_flag)]
|
|
|
|
|
|
pub struct QuestChunk {
|
|
|
|
|
|
pub chunk_num: u32,
|
|
|
|
|
|
pub filename: [u8; 16],
|
|
|
|
|
|
pub blob: [u8; 0x400],
|
|
|
|
|
|
pub blob_length: u32,
|
|
|
|
|
|
pub unknown: u32,
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
#[pso_packet(0x13, no_flag)]
|
|
|
|
|
|
pub struct QuestChunkAck {
|
|
|
|
|
|
pub chunk_num: u32,
|
|
|
|
|
|
filename: [u8; 16],
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
#[pso_packet(0xAC)]
|
|
|
|
|
|
pub struct DoneLoadingQuest {
|
|
|
|
|
|
}
|