mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-11-13 21:40:00 -08:00
[Client] Lay out table and turn order dialog in seat order
This commit is contained in:
parent
00c0b2c96b
commit
6a25a2f15e
4 changed files with 96 additions and 2 deletions
|
|
@ -638,8 +638,25 @@ void TabGame::actTurnOrder()
|
|||
}
|
||||
|
||||
QStringList playerNames;
|
||||
for (PlayerLogic *player : game->getPlayerManager()->getPlayers()) {
|
||||
playerNames.append(player->getPlayerInfo()->getName());
|
||||
const QList<int> seatOrder = game->getGameState()->getSeatOrder();
|
||||
const auto &players = game->getPlayerManager()->getPlayers();
|
||||
if (!seatOrder.isEmpty()) {
|
||||
for (int playerId : seatOrder) {
|
||||
if (PlayerLogic *player = players.value(playerId, nullptr)) {
|
||||
playerNames.append(player->getPlayerInfo()->getName());
|
||||
}
|
||||
}
|
||||
// Include any players missing from the tracked order rather than dropping them.
|
||||
for (auto it = players.constBegin(); it != players.constEnd(); ++it) {
|
||||
const QString name = it.value()->getPlayerInfo()->getName();
|
||||
if (!playerNames.contains(name)) {
|
||||
playerNames.append(name);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
for (PlayerLogic *player : players) {
|
||||
playerNames.append(player->getPlayerInfo()->getName());
|
||||
}
|
||||
}
|
||||
|
||||
DlgTurnOrder dlg(playerNames, this);
|
||||
|
|
@ -1334,6 +1351,7 @@ void TabGame::createPlayAreaWidget(bool bReplay)
|
|||
scene = new GameScene(phasesToolbar, this);
|
||||
connect(game->getPlayerManager(), &PlayerManager::playerConceded, scene, &GameScene::rearrange);
|
||||
connect(game->getPlayerManager(), &PlayerManager::playerCountChanged, scene, &GameScene::rearrange);
|
||||
connect(game->getGameState(), &GameState::seatOrderChanged, scene, &GameScene::rearrange);
|
||||
connect(scene, &GameScene::arrowDeletionRequested, game->getGameEventHandler(),
|
||||
&GameEventHandler::handleArrowDeletion);
|
||||
connect(game->getGameEventHandler(), &GameEventHandler::arrowDeleted, scene, &GameScene::deleteArrow);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue