mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-11-10 03:53:26 -08:00
63 lines
1.2 KiB
C++
63 lines
1.2 KiB
C++
/**
|
|
* @file abstract_game.h
|
|
* @ingroup GameLogic
|
|
*/
|
|
//! \todo Document this file.
|
|
|
|
#ifndef COCKATRICE_ABSTRACT_GAME_H
|
|
#define COCKATRICE_ABSTRACT_GAME_H
|
|
|
|
#include <QObject>
|
|
#include <QString>
|
|
#include <qtmetamacros.h>
|
|
|
|
class AbstractClient;
|
|
class CardState;
|
|
class GameEventHandler;
|
|
class GameMetaInfo;
|
|
class GameReplay;
|
|
class GameState;
|
|
class PlayerManager;
|
|
class CardState;
|
|
class AbstractGame : public QObject
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
explicit AbstractGame(QObject *parent);
|
|
|
|
GameMetaInfo *gameMetaInfo;
|
|
GameState *gameState;
|
|
GameEventHandler *gameEventHandler;
|
|
PlayerManager *playerManager;
|
|
|
|
GameMetaInfo *getGameMetaInfo()
|
|
{
|
|
return gameMetaInfo;
|
|
}
|
|
|
|
GameState *getGameState() const
|
|
{
|
|
return gameState;
|
|
}
|
|
|
|
GameEventHandler *getGameEventHandler() const
|
|
{
|
|
return gameEventHandler;
|
|
}
|
|
|
|
PlayerManager *getPlayerManager() const
|
|
{
|
|
return playerManager;
|
|
}
|
|
|
|
bool isHost() const;
|
|
|
|
AbstractClient *getClientForPlayer(int playerId) const;
|
|
|
|
void loadReplay(const GameReplay *replay);
|
|
|
|
CardState *getCard(int playerId, const QString &zoneName, int cardId) const;
|
|
};
|
|
|
|
#endif // COCKATRICE_ABSTRACT_GAME_H
|