document choice search in 61 command
This commit is contained in:
+3
-13
@@ -2059,20 +2059,10 @@ struct C_CreateGame_BB_C1 : C_CreateGame<char16_t> {
|
||||
|
||||
// C2 (C->S): Set choice search parameters
|
||||
// Server does not respond.
|
||||
// The ChoiceSearchConfig structure is defined in Player.hh.
|
||||
|
||||
template <typename ItemIDT>
|
||||
struct C_ChoiceSearchSelections_C2_C3 {
|
||||
le_uint16_t disabled = 0; // 0 = enabled, 1 = disabled. Unused for command C3
|
||||
le_uint16_t unused = 0;
|
||||
struct Entry {
|
||||
ItemIDT parent_category_id = 0;
|
||||
ItemIDT category_id = 0;
|
||||
} __packed__;
|
||||
Entry entries[0];
|
||||
} __packed__;
|
||||
|
||||
struct C_ChoiceSearchSelections_DC_C2_C3 : C_ChoiceSearchSelections_C2_C3<le_uint32_t> { } __packed__;
|
||||
struct C_ChoiceSearchSelections_PC_V3_BB_C2_C3 : C_ChoiceSearchSelections_C2_C3<le_uint16_t> { } __packed__;
|
||||
struct C_ChoiceSearchSelections_DC_C2_C3 : ChoiceSearchConfig<le_uint32_t> { } __packed__;
|
||||
struct C_ChoiceSearchSelections_PC_V3_BB_C2_C3 : ChoiceSearchConfig<le_uint16_t> { } __packed__;
|
||||
|
||||
// C3 (C->S): Execute choice search
|
||||
// Same format as C2. The disabled field is unused.
|
||||
|
||||
+17
-3
@@ -383,6 +383,20 @@ struct PlayerChallengeDataBB {
|
||||
|
||||
|
||||
|
||||
template <typename ItemIDT>
|
||||
struct ChoiceSearchConfig {
|
||||
// 0 = enabled, 1 = disabled. Unused for command C3
|
||||
le_uint16_t choice_search_disabled = 0;
|
||||
le_uint16_t unused = 0;
|
||||
struct Entry {
|
||||
ItemIDT parent_category_id = 0;
|
||||
ItemIDT category_id = 0;
|
||||
} __attribute__((packed));
|
||||
parray<Entry, 5> entries;
|
||||
} __attribute__((packed));
|
||||
|
||||
|
||||
|
||||
struct PSOPlayerDataDCPC { // For command 61
|
||||
PlayerInventory inventory;
|
||||
PlayerDispDataDCPCV3 disp;
|
||||
@@ -392,7 +406,7 @@ struct PSOPlayerDataV3 { // For command 61
|
||||
PlayerInventory inventory;
|
||||
PlayerDispDataDCPCV3 disp;
|
||||
PlayerChallengeDataV3 challenge_data;
|
||||
parray<uint8_t, 0x18> unknown;
|
||||
ChoiceSearchConfig<le_uint16_t> choice_search_config;
|
||||
ptext<char, 0xAC> info_board;
|
||||
parray<le_uint32_t, 0x1E> blocked_senders;
|
||||
le_uint32_t auto_reply_enabled;
|
||||
@@ -406,7 +420,7 @@ struct PSOPlayerDataGCEp3 { // For command 61
|
||||
PlayerInventory inventory;
|
||||
PlayerDispDataDCPCV3 disp;
|
||||
PlayerChallengeDataV3 challenge_data;
|
||||
parray<uint8_t, 0x18> unknown;
|
||||
ChoiceSearchConfig<le_uint16_t> choice_search_config;
|
||||
ptext<char, 0xAC> info_board;
|
||||
parray<le_uint32_t, 0x1E> blocked_senders;
|
||||
le_uint32_t auto_reply_enabled;
|
||||
@@ -418,7 +432,7 @@ struct PSOPlayerDataBB { // For command 61
|
||||
PlayerInventory inventory;
|
||||
PlayerDispDataBB disp;
|
||||
PlayerChallengeDataBB challenge_data;
|
||||
parray<uint8_t, 0x18> unknown;
|
||||
ChoiceSearchConfig<le_uint16_t> choice_search_config;
|
||||
ptext<char16_t, 0xAC> info_board;
|
||||
parray<le_uint32_t, 0x1E> blocked_senders;
|
||||
le_uint32_t auto_reply_enabled;
|
||||
|
||||
Reference in New Issue
Block a user