diff --git a/cockatrice/src/client/tabs/tab_game.cpp b/cockatrice/src/client/tabs/tab_game.cpp index 6f8f643ef..1e4bd1fc3 100644 --- a/cockatrice/src/client/tabs/tab_game.cpp +++ b/cockatrice/src/client/tabs/tab_game.cpp @@ -149,6 +149,7 @@ void TabGame::connectToGameState() void TabGame::connectToPlayerManager() { connect(game->getPlayerManager(), &PlayerManager::playerAdded, this, &TabGame::addPlayer); + connect(game->getPlayerManager(), &PlayerManager::playerRemoved, this, &TabGame::processPlayerLeave); // update menu text when player concedes so that "concede" gets updated to "unconcede" connect(game->getPlayerManager(), &PlayerManager::playerConceded, this, &TabGame::retranslateUi); } diff --git a/cockatrice/src/game/game_scene.cpp b/cockatrice/src/game/game_scene.cpp index 1494661d7..a9bce298a 100644 --- a/cockatrice/src/game/game_scene.cpp +++ b/cockatrice/src/game/game_scene.cpp @@ -85,7 +85,7 @@ void GameScene::rearrange() Player *p = playersIter.next()->getPlayer(); if (p && !p->getConceded()) { playersPlaying.append(p); - if (!firstPlayerFound && (p->getPlayerInfo()->getLocal())) { + if (!firstPlayerFound && p->getPlayerInfo()->getLocal()) { firstPlayerIndex = playersPlaying.size() - 1; firstPlayerFound = true; } diff --git a/cockatrice/src/game/player/player_manager.cpp b/cockatrice/src/game/player/player_manager.cpp index bbe128bf8..8fa7bde78 100644 --- a/cockatrice/src/game/player/player_manager.cpp +++ b/cockatrice/src/game/player/player_manager.cpp @@ -57,9 +57,9 @@ void PlayerManager::removePlayer(int playerId) if (!player) { return; } - players.remove(playerId); - emit playerCountChanged(); emit playerRemoved(player); + emit playerCountChanged(); + players.remove(playerId); } Player *PlayerManager::getPlayer(int playerId) const