mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-04-27 07:48:01 -07:00
preliminary AlwaysRevealTopCard support related to issue #31, server code cleanup (finally removed getGameState)
This commit is contained in:
parent
75bac4a5b9
commit
7417236c3a
28 changed files with 329 additions and 184 deletions
30
common/server_arrow.cpp
Normal file
30
common/server_arrow.cpp
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
#include "server_arrow.h"
|
||||
#include "server_player.h"
|
||||
#include "server_card.h"
|
||||
#include "server_cardzone.h"
|
||||
#include "pb/serverinfo_arrow.pb.h"
|
||||
|
||||
Server_Arrow::Server_Arrow(int _id, Server_Card *_startCard, Server_ArrowTarget *_targetItem, const color &_arrowColor)
|
||||
: id(_id),
|
||||
startCard(_startCard),
|
||||
targetItem(_targetItem),
|
||||
arrowColor(_arrowColor)
|
||||
{
|
||||
}
|
||||
|
||||
void Server_Arrow::getInfo(ServerInfo_Arrow *info)
|
||||
{
|
||||
info->set_id(id);
|
||||
info->set_start_player_id(startCard->getZone()->getPlayer()->getPlayerId());
|
||||
info->set_start_zone(startCard->getZone()->getName().toStdString());
|
||||
info->set_start_card_id(startCard->getId());
|
||||
info->mutable_arrow_color()->CopyFrom(arrowColor);
|
||||
|
||||
Server_Card *targetCard = qobject_cast<Server_Card *>(targetItem);
|
||||
if (targetCard) {
|
||||
info->set_target_player_id(targetCard->getZone()->getPlayer()->getPlayerId());
|
||||
info->set_target_zone(targetCard->getZone()->getName().toStdString());
|
||||
info->set_target_card_id(targetCard->getId());
|
||||
} else
|
||||
info->set_target_player_id(static_cast<Server_Player *>(targetItem)->getPlayerId());
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue