mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-07-14 06:22:15 -07:00
Merge branch 'master' into build/6162-use-vcpk-everywhere-aqt-install
This commit is contained in:
commit
b476abf2a5
7 changed files with 26 additions and 30 deletions
|
|
@ -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: {
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -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();
|
||||
}
|
||||
|
|
@ -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;
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -168,7 +168,6 @@ public:
|
|||
void connectToPlayerManager();
|
||||
void connectToGameEventHandler();
|
||||
void connectMessageLogToGameEventHandler();
|
||||
void connectMessageLogToPlayerHandler();
|
||||
void connectPlayerListToGameEventHandler();
|
||||
TabGame(TabSupervisor *_tabSupervisor, GameReplay *replay);
|
||||
~TabGame() override;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue