RosettaStone::Card Class Reference

Card class. More...

#include <Rosetta/Cards/Card.hpp>

Public Member Functions

 Card ()=default
 Default constructor. More...
 
virtual ~Card ()=default
 Default destructor. More...
 
 Card (const Card &card)=default
 Default copy constructor. More...
 
 Card (Card &&card)=default
 Default move constructor. More...
 
Cardoperator= (const Card &card)=default
 Default copy assignment operator. More...
 
Cardoperator= (Card &&card)=default
 Default move assignment operator. More...
 
void Initialize ()
 Initializes card data. More...
 
bool HasMechanic (GameTag mechanic) const
 
std::size_t GetMaxAllowedInDeck () const
 
virtual void ShowBriefInfo () const
 Prints brief card information. More...
 
virtual void ShowInfo () const
 Prints card information. More...
 

Public Attributes

Rarity rarity = Rarity::INVALID
 
Faction faction = Faction::INVALID
 
CardSet cardSet = CardSet::INVALID
 
CardClass cardClass = CardClass::INVALID
 
CardType cardType = CardType::INVALID
 
Race race = Race::INVALID
 
std::string id
 
std::string name
 
std::string text
 
std::optional< std::size_t > attack
 
std::optional< std::size_t > health
 
std::optional< std::size_t > spellDamage
 
std::optional< std::size_t > durability
 
std::size_t cost = 0
 
std::vector< GameTag > mechanics
 
std::map< PlayReq, intplayRequirements
 
std::vector< std::string > entourages
 
Power power
 
std::size_t maxAllowedInDeck = 0
 
bool isCollectible = false
 

Detailed Description

Card class.

This class stores card information such as attack, health and cost.

Constructor & Destructor Documentation

◆ Card() [1/3]

RosettaStone::Card::Card ( )
default

Default constructor.

◆ ~Card()

virtual RosettaStone::Card::~Card ( )
virtualdefault

Default destructor.

◆ Card() [2/3]

RosettaStone::Card::Card ( const Card card)
default

Default copy constructor.

◆ Card() [3/3]

RosettaStone::Card::Card ( Card &&  card)
default

Default move constructor.

Member Function Documentation

◆ GetMaxAllowedInDeck()

std::size_t RosettaStone::Card::GetMaxAllowedInDeck ( ) const

Returns the number of cards that can be inserted into the deck.

Returns
The number of cards that can be inserted into the deck.

◆ HasMechanic()

bool RosettaStone::Card::HasMechanic ( GameTag  mechanic) const

Finds out if this card has mechanic.

Parameters
mechanicThe mechanic of card.
Returns
true if this card has mechanic, and false otherwise.

◆ Initialize()

void RosettaStone::Card::Initialize ( )

Initializes card data.

◆ operator=() [1/2]

Card& RosettaStone::Card::operator= ( const Card card)
default

Default copy assignment operator.

◆ operator=() [2/2]

Card& RosettaStone::Card::operator= ( Card &&  card)
default

Default move assignment operator.

◆ ShowBriefInfo()

virtual void RosettaStone::Card::ShowBriefInfo ( ) const
virtual

Prints brief card information.

◆ ShowInfo()

virtual void RosettaStone::Card::ShowInfo ( ) const
virtual

Prints card information.

Member Data Documentation

◆ attack

std::optional<std::size_t> RosettaStone::Card::attack

◆ cardClass

CardClass RosettaStone::Card::cardClass = CardClass::INVALID

◆ cardSet

CardSet RosettaStone::Card::cardSet = CardSet::INVALID

◆ cardType

CardType RosettaStone::Card::cardType = CardType::INVALID

◆ cost

std::size_t RosettaStone::Card::cost = 0

◆ durability

std::optional<std::size_t> RosettaStone::Card::durability

◆ entourages

std::vector<std::string> RosettaStone::Card::entourages

◆ faction

Faction RosettaStone::Card::faction = Faction::INVALID

◆ health

std::optional<std::size_t> RosettaStone::Card::health

◆ id

std::string RosettaStone::Card::id

◆ isCollectible

bool RosettaStone::Card::isCollectible = false

◆ maxAllowedInDeck

std::size_t RosettaStone::Card::maxAllowedInDeck = 0

◆ mechanics

std::vector<GameTag> RosettaStone::Card::mechanics

◆ name

std::string RosettaStone::Card::name

◆ playRequirements

std::map<PlayReq, int> RosettaStone::Card::playRequirements

◆ power

Power RosettaStone::Card::power

◆ race

Race RosettaStone::Card::race = Race::INVALID

◆ rarity

Rarity RosettaStone::Card::rarity = Rarity::INVALID

◆ spellDamage

std::optional<std::size_t> RosettaStone::Card::spellDamage

◆ text

std::string RosettaStone::Card::text

The documentation for this class was generated from the following file: