22#include <QInputDialog>
23#include <QLoggingCategory>
27#include <libcockatrice/protocol/pb/card_attributes.pb.h>
28#include <libcockatrice/protocol/pb/game_event.pb.h>
46class CommandContainer;
56class ServerInfo_Arrow;
57class ServerInfo_Counter;
58class ServerInfo_Player;
83 Player(
const ServerInfo_User &info,
int _id,
bool _local,
bool _judge,
AbstractGame *_parent);
133 void setDeck(DeckLoader &_deck);
142 zones.insert(zone->getName(), zone);
148 return zones.value(zoneName);
151 const QMap<QString, CardZoneLogic *> &
getZones()
const
158 return qobject_cast<PileZoneLogic *>(
zones.value(
"deck"));
163 return qobject_cast<PileZoneLogic *>(
zones.value(
"grave"));
168 return qobject_cast<PileZoneLogic *>(
zones.value(
"rfg"));
173 return qobject_cast<PileZoneLogic *>(
zones.value(
"sb"));
178 return qobject_cast<TableZoneLogic *>(
zones.value(
"table"));
183 return qobject_cast<StackZoneLogic *>(
zones.value(
"stack"));
188 return qobject_cast<HandZoneLogic *>(
zones.value(
"hand"));
247 QMap<QString, CardZoneLogic *>
zones;
Definition abstract_card_item.h:22
Definition abstract_counter.h:22
Definition abstract_game.h:21
AnnotationDialog(QWidget *parent=nullptr)
Definition player.h:263
void keyPressEvent(QKeyEvent *e) override
Definition player_actions.cpp:1466
Definition arrow_item.h:19
Definition arrow_target.h:18
Core in-memory container for card and set data.
Definition card_database.h:29
Definition card_item.h:29
Definition card_zone_logic.h:26
Definition card_zone.h:26
Manages the game board display including players, zones, cards, and animations.
Definition game_scene.h:38
Definition hand_zone_logic.h:12
Definition pile_zone_logic.h:12
Definition player_actions.h:34
Definition player_event_handler.h:38
Definition player_graphics_item.h:22
Definition player_info.h:16
void addCard(CardItem *c)
Definition player.cpp:250
void setConceded(bool _conceded)
Definition player.cpp:100
void setGameStarted()
Definition player.cpp:476
DeckLoader * getDeck() const
Definition player.h:135
CardZoneLogic * getZone(const QString zoneName)
Definition player.h:146
bool dialogSemaphore
Definition player.h:251
AbstractCounter * addCounter(const ServerInfo_Counter &counter)
Definition player.cpp:274
void incrementAllCardCounters()
Definition player.cpp:325
void forwardActionSignalsToEventHandler()
Definition player.cpp:53
void clearCustomZonesMenu()
PileZoneLogic * getRfgZone()
Definition player.h:166
void processPlayerInfo(const ServerInfo_Player &info)
Definition player.cpp:119
int getZoneId() const
Definition player.h:226
TableZoneLogic * getTableZone()
Definition player.h:176
void updateZones()
Definition player.cpp:461
bool getConceded() const
Definition player.h:214
bool conceded
Definition player.h:242
void removeArrow(ArrowItem *arrow)
Definition player.cpp:423
void activeChanged(bool active)
int zoneId
Definition player.h:246
PileZoneLogic * getDeckZone()
Definition player.h:156
void concededChanged(int playerId, bool conceded)
T * addZone(T *zone)
Definition player.h:140
ArrowItem * addArrow(const ServerInfo_Arrow &arrow)
Definition player.cpp:370
PlayerActions * playerActions
Definition player.h:237
void setDeck(DeckLoader &_deck)
Definition player.cpp:267
AbstractGame * game
Definition player.h:234
const QMap< QString, CardZoneLogic * > & getZones() const
Definition player.h:151
void setDialogSemaphore(const bool _active)
Definition player.h:221
StackZoneLogic * getStackZone()
Definition player.h:181
const QMap< int, ArrowItem * > & getArrows() const
Definition player.h:208
PlayerMenu * playerMenu
Definition player.h:238
void delArrow(int arrowId)
Definition player.cpp:414
PlayerEventHandler * playerEventHandler
Definition player.h:236
void addViewCustomZoneActionToCustomZoneMenu(QString zoneName)
PlayerGraphicsItem * getGraphicsItem()
Definition player.cpp:466
HandZoneLogic * getHandZone()
Definition player.h:186
PlayerInfo * playerInfo
Definition player.h:235
QMap< int, AbstractCounter * > getCounters()
Definition player.h:197
~Player() override
Definition player.cpp:75
bool active
Definition player.h:241
void setActive(bool _active)
Definition player.cpp:455
void deleteCard(CardItem *c)
Definition player.cpp:255
QMap< QString, CardZoneLogic * > zones
Definition player.h:247
QList< CardItem * > cardsToDelete
Definition player.h:252
GameScene * getGameScene()
Definition player.cpp:471
PlayerMenu * getPlayerMenu() const
Definition player.h:128
PileZoneLogic * getGraveZone()
Definition player.h:161
QMap< int, ArrowItem * > arrows
Definition player.h:249
void resetTopCardMenuActions()
void processCardAttachment(const ServerInfo_Player &info)
Definition player.cpp:217
PileZoneLogic * getSideboardZone()
Definition player.h:171
void delCounter(int counterId)
Definition player.cpp:304
void newCardAdded(AbstractCardItem *card)
DeckLoader * deck
Definition player.h:244
void initializeZones()
Definition player.cpp:62
PlayerActions * getPlayerActions() const
Definition player.h:113
void openDeckEditor(DeckLoader *deck)
void setZoneId(int _zoneId)
Definition player.cpp:113
PlayerEventHandler * getPlayerEventHandler() const
Definition player.h:118
QMap< int, AbstractCounter * > counters
Definition player.h:248
bool clearCardsToDelete()
Definition player.cpp:439
PlayerInfo * getPlayerInfo() const
Definition player.h:123
bool getActive() const
Definition player.h:99
void clear()
Definition player.cpp:88
void clearCounters()
Definition player.cpp:316
AbstractGame * getGame() const
Definition player.h:104
PlayerGraphicsItem * graphicsItem
Definition player.h:239
void clearArrows()
Definition player.cpp:430
Player(const ServerInfo_User &info, int _id, bool _local, bool _judge, AbstractGame *_parent)
Definition player.cpp:32
Definition stack_zone_logic.h:12
Definition table_zone_logic.h:12
Definition phases_toolbar.h:18
Q_LOGGING_CATEGORY(PlayerLog, "player")
const int MAX_TOKENS_PER_DIALOG
Definition player.h:62