feat(gameplay): add player logout and disconnect handling

This commit is contained in:
2026-06-26 17:05:09 +08:00
parent 25e9b0e0d3
commit e5e84848a9
11 changed files with 110 additions and 13 deletions

View File

@@ -99,13 +99,19 @@ asio::awaitable<void> NetworkClient::read_loop() {
if (rsp.ParseFromArray(body_data.data(), body_data.size())) {
m_world.receive_time(rsp);
}
}
} break;
case to_num(PacketEnum::PLAYER_INFO_RSP): {
PlayerInfoRsp rsp;
if (rsp.ParseFromArray(body_data.data(), body_data.size())) {
m_world.receive_other_player(rsp);
}
} break;
case to_num(PacketEnum::LOGOUT_RSP): {
LogoutRsp rsp;
if (rsp.ParseFromArray(body_data.data(), body_data.size())) {
m_world.receive_player_logout(rsp);
}
} break;
}
}
} catch (const asio::system_error& e) {