From 808ef7b3f690183cb799726ad618cbaf3b1a0032 Mon Sep 17 00:00:00 2001 From: Simon Pribylski <66266021+Persson-dev@users.noreply.github.com> Date: Sat, 26 Aug 2023 11:27:05 +0200 Subject: [PATCH] moved player leave packet --- src/server/Server.cpp | 3 +-- src/server/game/ServerGame.cpp | 4 ++++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/server/Server.cpp b/src/server/Server.cpp index cfde5da..60d6e3b 100644 --- a/src/server/Server.cpp +++ b/src/server/Server.cpp @@ -181,8 +181,7 @@ void Server::OnPlayerJoin(std::uint8_t id) { } void Server::OnPlayerLeave(std::uint8_t id) { - protocol::PlayerLeavePacket packet(id); - BroadcastPacket(&packet); + GetGame().NotifyListeners(&game::GameListener::OnPlayerLeave, id); if (GetPlayers().empty() && m_Game.GetGameState() != game::GameState::Lobby) { utils::LOG("All players left. Go back to lobby ..."); diff --git a/src/server/game/ServerGame.cpp b/src/server/game/ServerGame.cpp index 9f30904..ddb055a 100644 --- a/src/server/game/ServerGame.cpp +++ b/src/server/game/ServerGame.cpp @@ -2,6 +2,7 @@ #include "server/Server.h" #include "td/protocol/packets/DisconnectPacket.h" +#include "td/protocol/packets/PlayerLeavePacket.h" #include "td/protocol/packets/RemoveMobPacket.h" #include "td/protocol/packets/RemoveTowerPacket.h" #include "td/protocol/packets/UpdatePlayerTeamPacket.h" @@ -167,6 +168,9 @@ void ServerGame::OnPlayerLeave(game::PlayerID playerId) { towerList.erase(towerList.begin() + i); } } + + protocol::PlayerLeavePacket packet(playerId); + m_Server->BroadcastPacket(&packet); } } // namespace game