summaryrefslogtreecommitdiff
path: root/context.h
diff options
context:
space:
mode:
Diffstat (limited to 'context.h')
-rw-r--r--context.h47
1 files changed, 34 insertions, 13 deletions
diff --git a/context.h b/context.h
index fff939a..8d4e3d0 100644
--- a/context.h
+++ b/context.h
@@ -184,10 +184,10 @@ typedef long ptrdiff_t;
o(handle_67_recv_start_lobby2, TPlyJoinLobbyEntry *entries, u8 entry_count, int client_id, int leader_id, int lobby_number, int block_number, int smth, int event) \
o(handle_80_recv_generate_id, TRecvGenerateID gen_id) \
o(unused9, void) \
- o(handle_65_add_player_to_game_packet, void) \
- o(handle_66_player_left_game_packet, void) \
- o(handle_68_add_player_to_lobby_packet, void) \
- o(handle_69_player_left_lobby_packet, void) \
+ o(handle_65_recv_burst_game, TPlyJoinLobbyEntry *entries, int leader_id, int disable_udp) \
+ o(handle_66_recv_exit_game, int client_id, int leader_id, int disable_udp) \
+ o(handle_68_recv_burst_lobby, TPlyJoinLobbyEntry *entries, int leader_id) \
+ o(handle_69_recv_exit_lobby, int client_id, int leader_id) \
o(handle_18_90_9A_login_response_packet, void) \
o(handle_92_9C_register_response_packet, void) \
o(unused10, void) \
@@ -1467,6 +1467,19 @@ public:
};
};
+template<bool is_lobby>
+class TRecvExit {
+public:
+ packet_header header;
+ char client_id;
+ char leader_id;
+ char disable_udp;
+public:
+ void bswap() {
+ header.bswap();
+ };
+};
+
class TRegister {
public:
packet_header header;
@@ -1680,15 +1693,15 @@ public:
class TPlyJoinLobby {
public:
packet_header header;
- u8 client_id;
- u8 leader_id;
- u8 disable_udp;
- u8 lobby_number;
- u8 block_number;
- u8 unknown1;
- u8 event;
- u8 unknown2;
- u8 unused[4];
+ char client_id;
+ char leader_id;
+ char disable_udp;
+ char lobby_number;
+ char block_number;
+ char unknown1;
+ char event;
+ char unknown2;
+ char unused[4];
TPlyJoinLobbyEntry entries[12];
public:
void bswap() {
@@ -1896,6 +1909,14 @@ public:
void recv_quest_info(packet &pkt);
// 0xB0
void recv_emergency_call(packet &pkt);
+ // 0x65
+ void recv_burst_game(packet &pkt);
+ // 0x66
+ void recv_exit_game(packet &pkt);
+ // 0x68
+ void recv_burst_lobby(packet &pkt);
+ // 0x69
+ void recv_exit_lobby(packet &pkt);
// Send command handlers.
// 0x03