mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-07-14 22:42:14 -07:00
Properly respond to game started again.
Took 49 minutes
This commit is contained in:
parent
0d9969b365
commit
d84c5864fd
3 changed files with 21 additions and 0 deletions
|
|
@ -109,6 +109,7 @@ TabGame::TabGame(TabSupervisor *_tabSupervisor,
|
||||||
connect(gameState, &GameState::playerAdded, this, &TabGame::addPlayer);
|
connect(gameState, &GameState::playerAdded, this, &TabGame::addPlayer);
|
||||||
connect(gameState, &GameState::spectatorAdded, this, &TabGame::addSpectator);
|
connect(gameState, &GameState::spectatorAdded, this, &TabGame::addSpectator);
|
||||||
|
|
||||||
|
connect(gameMetaInfo, &GameMetaInfo::startedChanged, gameState, &GameState::onStartedChanged);
|
||||||
connect(gameState, &GameState::gameStarted, this, &TabGame::startGame);
|
connect(gameState, &GameState::gameStarted, this, &TabGame::startGame);
|
||||||
|
|
||||||
gameEventHandler = new GameEventHandler(this);
|
gameEventHandler = new GameEventHandler(this);
|
||||||
|
|
|
||||||
|
|
@ -124,34 +124,44 @@ void GameEventHandler::processGameEventContainer(const GameEventContainer &cont,
|
||||||
|
|
||||||
switch (eventType) {
|
switch (eventType) {
|
||||||
case GameEvent::GAME_STATE_CHANGED:
|
case GameEvent::GAME_STATE_CHANGED:
|
||||||
|
qInfo() << "Game state changed event";
|
||||||
eventGameStateChanged(event.GetExtension(Event_GameStateChanged::ext), playerId, context);
|
eventGameStateChanged(event.GetExtension(Event_GameStateChanged::ext), playerId, context);
|
||||||
break;
|
break;
|
||||||
case GameEvent::PLAYER_PROPERTIES_CHANGED:
|
case GameEvent::PLAYER_PROPERTIES_CHANGED:
|
||||||
|
qInfo() << "player prop event";
|
||||||
eventPlayerPropertiesChanged(event.GetExtension(Event_PlayerPropertiesChanged::ext), playerId,
|
eventPlayerPropertiesChanged(event.GetExtension(Event_PlayerPropertiesChanged::ext), playerId,
|
||||||
context);
|
context);
|
||||||
break;
|
break;
|
||||||
case GameEvent::JOIN:
|
case GameEvent::JOIN:
|
||||||
|
qInfo() << "join event";
|
||||||
eventJoin(event.GetExtension(Event_Join::ext), playerId, context);
|
eventJoin(event.GetExtension(Event_Join::ext), playerId, context);
|
||||||
break;
|
break;
|
||||||
case GameEvent::LEAVE:
|
case GameEvent::LEAVE:
|
||||||
|
qInfo() << "leave event";
|
||||||
eventLeave(event.GetExtension(Event_Leave::ext), playerId, context);
|
eventLeave(event.GetExtension(Event_Leave::ext), playerId, context);
|
||||||
break;
|
break;
|
||||||
case GameEvent::KICKED:
|
case GameEvent::KICKED:
|
||||||
|
qInfo() << "kicked event";
|
||||||
eventKicked(event.GetExtension(Event_Kicked::ext), playerId, context);
|
eventKicked(event.GetExtension(Event_Kicked::ext), playerId, context);
|
||||||
break;
|
break;
|
||||||
case GameEvent::GAME_HOST_CHANGED:
|
case GameEvent::GAME_HOST_CHANGED:
|
||||||
|
qInfo() << "host changed event";
|
||||||
eventGameHostChanged(event.GetExtension(Event_GameHostChanged::ext), playerId, context);
|
eventGameHostChanged(event.GetExtension(Event_GameHostChanged::ext), playerId, context);
|
||||||
break;
|
break;
|
||||||
case GameEvent::GAME_CLOSED:
|
case GameEvent::GAME_CLOSED:
|
||||||
|
qInfo() << "game closed event";
|
||||||
eventGameClosed(event.GetExtension(Event_GameClosed::ext), playerId, context);
|
eventGameClosed(event.GetExtension(Event_GameClosed::ext), playerId, context);
|
||||||
break;
|
break;
|
||||||
case GameEvent::SET_ACTIVE_PLAYER:
|
case GameEvent::SET_ACTIVE_PLAYER:
|
||||||
|
qInfo() << "set active player event";
|
||||||
eventSetActivePlayer(event.GetExtension(Event_SetActivePlayer::ext), playerId, context);
|
eventSetActivePlayer(event.GetExtension(Event_SetActivePlayer::ext), playerId, context);
|
||||||
break;
|
break;
|
||||||
case GameEvent::SET_ACTIVE_PHASE:
|
case GameEvent::SET_ACTIVE_PHASE:
|
||||||
|
qInfo() << "set active phase";
|
||||||
eventSetActivePhase(event.GetExtension(Event_SetActivePhase::ext), playerId, context);
|
eventSetActivePhase(event.GetExtension(Event_SetActivePhase::ext), playerId, context);
|
||||||
break;
|
break;
|
||||||
case GameEvent::REVERSE_TURN:
|
case GameEvent::REVERSE_TURN:
|
||||||
|
qInfo() << "reverse turn event";
|
||||||
eventReverseTurn(event.GetExtension(Event_ReverseTurn::ext), playerId, context);
|
eventReverseTurn(event.GetExtension(Event_ReverseTurn::ext), playerId, context);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -199,6 +199,16 @@ public:
|
||||||
return gameClosed;
|
return gameClosed;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void onStartedChanged(bool _started)
|
||||||
|
{
|
||||||
|
if (_started) {
|
||||||
|
startGameTimer();
|
||||||
|
emit gameStarted(_started);
|
||||||
|
} else {
|
||||||
|
emit gameStopped();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void startGameTimer();
|
void startGameTimer();
|
||||||
|
|
||||||
void setGameStateKnown(bool known)
|
void setGameStateKnown(bool known)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue