mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-11-05 01:23:24 -08:00
* [Refactor] Move game logic into libcockatrice_game * [Refactor] Include card_state.h in player_actions.h * [Game] Inject settings providers into libcockatrice_game, drop Widgets * [Game] Follow base rename to createCardRequested after rebase * [Game] Drop unused CardItem forward declaration * [Game] Fix includes after moving game logic into libcockatrice_game --------- Co-authored-by: Lukas Brübach <Bruebach.Lukas@bdosecurity.de>
31 lines
1.1 KiB
C++
31 lines
1.1 KiB
C++
#include "game.h"
|
|
|
|
#include "game_meta_info.h"
|
|
#include "game_state.h"
|
|
#include "player/player_manager.h"
|
|
|
|
#include <QList>
|
|
#include <QMap>
|
|
#include <QString>
|
|
#include <libcockatrice/protocol/pb/event_game_joined.pb.h>
|
|
|
|
class AbstractClient;
|
|
class QObject;
|
|
|
|
Game::Game(QObject *_parent,
|
|
bool isLocalGame,
|
|
QList<AbstractClient *> &_clients,
|
|
const Event_GameJoined &event,
|
|
const QMap<int, QString> &_roomGameTypes,
|
|
IInterfaceSettingsProvider *interfaceSettings,
|
|
ICardPreferenceProvider *cardPreferences)
|
|
: AbstractGame(_parent)
|
|
{
|
|
gameMetaInfo->setFromProto(event.game_info());
|
|
gameMetaInfo->setRoomGameTypes(_roomGameTypes);
|
|
gameState = new GameState(this, 0, event.host_id(), isLocalGame, _clients, false, event.resuming(), -1, false);
|
|
connect(gameMetaInfo, &GameMetaInfo::startedChanged, gameState, &GameState::onStartedChanged);
|
|
playerManager = new PlayerManager(this, event.player_id(), event.judge(), event.spectator(), interfaceSettings,
|
|
cardPreferences);
|
|
gameMetaInfo->setStarted(false);
|
|
}
|