Don't get local ID from playerInfo on concession (#6143)

* Don't get local ID from playerInfo.

Took 39 minutes


Took 39 seconds

* Introduce isLocalPlayer convenience method.

Took 21 minutes

---------

Co-authored-by: Lukas Brübach <Bruebach.Lukas@bdosecurity.de>
This commit is contained in:
BruebachL 2025-09-15 01:09:30 +02:00 committed by GitHub
parent 4de5274996
commit aff775f488
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 7 additions and 1 deletions

View file

@ -35,6 +35,11 @@ Player *PlayerManager::getActiveLocalPlayer(int activePlayer) const
return nullptr;
}
bool PlayerManager::isLocalPlayer(int playerId)
{
return game->getGameState()->getIsLocalGame() || playerId == localPlayerId;
}
Player *PlayerManager::addPlayer(int playerId, const ServerInfo_User &info)
{
auto *newPlayer = new Player(info, playerId, isLocalPlayer(playerId) || game->getGameState()->getIsLocalGame(),
@ -68,7 +73,7 @@ Player *PlayerManager::getPlayer(int playerId) const
void PlayerManager::onPlayerConceded(int playerId, bool conceded)
{
// GameEventHandler cares about this for sending the concede/unconcede commands
if (playerId == getActiveLocalPlayer(playerId)->getPlayerInfo()->getId()) {
if (isLocalPlayer(playerId)) {
if (conceded) {
emit activeLocalPlayerConceded();
} else {

View file

@ -48,6 +48,7 @@ public:
}
Player *getActiveLocalPlayer(int activePlayer) const;
bool isLocalPlayer(int playerId);
Player *addPlayer(int playerId, const ServerInfo_User &info);