Merge branch 'master' into build/6162-use-vcpk-everywhere-aqt-install

This commit is contained in:
Bruno Alexandre Rosa 2025-09-26 18:14:59 -03:00
commit b476abf2a5
7 changed files with 26 additions and 30 deletions

View file

@ -340,6 +340,8 @@ void GameEventHandler::eventPlayerPropertiesChanged(const Event_PlayerProperties
while (playerIterator.hasNext())
playerIterator.next().value()->updateZones();
emit logConcede(eventPlayerId);
break;
}
case GameEventContext::UNCONCEDE: {
@ -349,6 +351,8 @@ void GameEventHandler::eventPlayerPropertiesChanged(const Event_PlayerProperties
while (playerIterator.hasNext())
playerIterator.next().value()->updateZones();
emit logUnconcede(eventPlayerId);
break;
}
case GameEventContext::DECK_SELECT: {

View file

@ -122,6 +122,8 @@ signals:
void logGameClosed();
void logActivePlayer(Player *activePlayer);
void logActivePhaseChanged(int activePhase);
void logConcede(int playerId);
void logUnconcede(int playerId);
};
#endif // COCKATRICE_GAME_EVENT_HANDLER_H

View file

@ -15,6 +15,10 @@ GameState::GameState(AbstractGame *parent,
clients(_clients), gameStateKnown(_gameStateKnown), resuming(_resuming), currentPhase(_currentPhase),
activePlayer(-1), gameClosed(_gameClosed)
{
gameTimer = new QTimer(this);
gameTimer->setInterval(1000);
connect(gameTimer, &QTimer::timeout, this, &GameState::incrementGameTime);
gameTimer->start();
}
void GameState::incrementGameTime()
@ -24,6 +28,7 @@ void GameState::incrementGameTime()
void GameState::setGameTime(int _secondsElapsed)
{
secondsElapsed = _secondsElapsed;
int seconds = _secondsElapsed;
int minutes = seconds / 60;
seconds -= minutes * 60;
@ -33,12 +38,4 @@ void GameState::setGameTime(int _secondsElapsed)
emit updateTimeElapsedLabel(QString::number(hours).rightJustified(2, '0') + ":" +
QString::number(minutes).rightJustified(2, '0') + ":" +
QString::number(seconds).rightJustified(2, '0'));
}
void GameState::startGameTimer()
{
gameTimer = new QTimer(this);
gameTimer->setInterval(1000);
connect(gameTimer, &QTimer::timeout, this, &GameState::incrementGameTime);
gameTimer->start();
}

View file

@ -91,15 +91,12 @@ public:
void onStartedChanged(bool _started)
{
if (_started) {
startGameTimer();
emit gameStarted(_started);
} else {
emit gameStopped();
}
}
void startGameTimer();
void setGameStateKnown(bool known)
{
gameStateKnown = known;

View file

@ -72,14 +72,6 @@ Player *PlayerManager::getPlayer(int playerId) const
void PlayerManager::onPlayerConceded(int playerId, bool conceded)
{
// GameEventHandler cares about this for sending the concede/unconcede commands
if (isLocalPlayer(playerId)) {
if (conceded) {
emit activeLocalPlayerConceded();
} else {
emit activeLocalPlayerUnconceded();
}
}
// Everything else cares about this
if (conceded) {
emit playerConceded(playerId);

View file

@ -78,7 +78,6 @@ TabGame::TabGame(TabSupervisor *_tabSupervisor, GameReplay *_replay)
connectToGameEventHandler();
connectPlayerListToGameEventHandler();
connectMessageLogToGameEventHandler();
connectMessageLogToPlayerHandler();
retranslateUi();
connect(&SettingsCache::instance().shortcuts(), &ShortcutsSettings::shortCutChanged, this,
@ -124,7 +123,6 @@ TabGame::TabGame(TabSupervisor *_tabSupervisor,
connectToGameEventHandler();
connectPlayerListToGameEventHandler();
connectMessageLogToGameEventHandler();
connectMessageLogToPlayerHandler();
retranslateUi();
connect(&SettingsCache::instance().shortcuts(), &ShortcutsSettings::shortCutChanged, this,
@ -152,6 +150,7 @@ void TabGame::connectToPlayerManager()
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);
connect(game->getPlayerManager(), &PlayerManager::playerUnconceded, this, &TabGame::retranslateUi);
}
void TabGame::connectToGameEventHandler()
@ -206,16 +205,13 @@ void TabGame::connectMessageLogToGameEventHandler()
connect(game->getGameEventHandler(), &GameEventHandler::logTurnReversed, messageLog,
&MessageLogWidget::logReverseTurn);
connect(game->getGameEventHandler(), &GameEventHandler::logConcede, messageLog, &MessageLogWidget::logConcede);
connect(game->getGameEventHandler(), &GameEventHandler::logUnconcede, messageLog, &MessageLogWidget::logUnconcede);
connect(game->getGameEventHandler(), &GameEventHandler::logGameClosed, messageLog,
&MessageLogWidget::logGameClosed);
}
void TabGame::connectMessageLogToPlayerHandler()
{
connect(game->getPlayerManager(), &PlayerManager::playerConceded, messageLog, &MessageLogWidget::logConcede);
connect(game->getPlayerManager(), &PlayerManager::playerUnconceded, messageLog, &MessageLogWidget::logUnconcede);
}
void TabGame::connectPlayerListToGameEventHandler()
{
connect(game->getGameEventHandler(), &GameEventHandler::playerJoined, playerListWidget,
@ -497,13 +493,14 @@ void TabGame::actConcede()
if (QMessageBox::question(this, tr("Concede"), tr("Are you sure you want to concede this game?"),
QMessageBox::Yes | QMessageBox::No, QMessageBox::No) != QMessageBox::Yes)
return;
emit game->getPlayerManager()->activeLocalPlayerConceded();
player->setConceded(true);
} else {
if (QMessageBox::question(this, tr("Unconcede"),
tr("You have already conceded. Do you want to return to this game?"),
QMessageBox::Yes | QMessageBox::No, QMessageBox::No) != QMessageBox::Yes)
return;
emit game->getPlayerManager()->activeLocalPlayerUnconceded();
player->setConceded(false);
}
}
@ -805,6 +802,9 @@ void TabGame::startGame(bool _resuming)
playerListWidget->setGameStarted(true, game->getGameState()->isResuming());
game->getGameMetaInfo()->setStarted(true);
static_cast<GameScene *>(gameView->scene())->rearrange();
aConcede->setText(tr("&Concede"));
aConcede->setEnabled(true);
}
void TabGame::stopGame()
@ -821,6 +821,9 @@ void TabGame::stopGame()
playerListWidget->setGameStarted(false, false);
scene->clearViews();
aConcede->setText(tr("&Concede"));
aConcede->setEnabled(false);
}
void TabGame::closeGame()
@ -940,6 +943,9 @@ void TabGame::createMenuItems()
connect(aGameInfo, &QAction::triggered, this, &TabGame::actGameInfo);
aConcede = new QAction(this);
connect(aConcede, &QAction::triggered, this, &TabGame::actConcede);
if (!game->getGameMetaInfo()->started()) {
aConcede->setEnabled(false);
}
connect(game->getPlayerManager(), &PlayerManager::activeLocalPlayerConceded, game->getGameEventHandler(),
&GameEventHandler::handleActiveLocalPlayerConceded);
connect(game->getPlayerManager(), &PlayerManager::activeLocalPlayerUnconceded, game->getGameEventHandler(),
@ -1282,7 +1288,6 @@ void TabGame::createMessageDock(bool bReplay)
timeElapsedLabel = new QLabel;
timeElapsedLabel->setAlignment(Qt::AlignCenter);
connect(game->getGameState(), &GameState::updateTimeElapsedLabel, this, &TabGame::updateTimeElapsedLabel);
game->getGameState()->startGameTimer();
messageLogLayout->addWidget(timeElapsedLabel);
}

View file

@ -168,7 +168,6 @@ public:
void connectToPlayerManager();
void connectToGameEventHandler();
void connectMessageLogToGameEventHandler();
void connectMessageLogToPlayerHandler();
void connectPlayerListToGameEventHandler();
TabGame(TabSupervisor *_tabSupervisor, GameReplay *replay);
~TabGame() override;