diff --git a/projects/mtg/include/CardPrimitive.h b/projects/mtg/include/CardPrimitive.h index 89754dc0f..a166a1c09 100644 --- a/projects/mtg/include/CardPrimitive.h +++ b/projects/mtg/include/CardPrimitive.h @@ -10,84 +10,85 @@ using namespace std; -class CardPrimitive { - protected: - vector ftdText; - string lcname; - ManaCost manaCost; +class CardPrimitive +{ +protected: + vector ftdText; + string lcname; + ManaCost manaCost; - public: - ManaCost reducedCost; - ManaCost increasedCost; - string text; - string name; - int init(); +public: + ManaCost reducedCost; + ManaCost increasedCost; + string text; + string name; + int init(); - int colors[Constants::MTG_NB_COLORS]; - map basicAbilities; - map magicTexts; - string magicText; - int alias; - string spellTargetType; - int power; - int toughness; - bool hasRestriction; - string restriction; - string otherrestriction; - int suspendedTime; + int colors[Constants::MTG_NB_COLORS]; + map basicAbilities; + map magicTexts; + string magicText; + int alias; + string spellTargetType; + int power; + int toughness; + bool hasRestriction; + string restriction; + string otherrestriction; + int suspendedTime; - vectortypes; - CardPrimitive(); - CardPrimitive(CardPrimitive * source); + vectortypes; + CardPrimitive(); + CardPrimitive(CardPrimitive * source); - void setColor(int _color, int removeAllOthers = 0); - void setColor(string _color, int removeAllOthers = 0); - void removeColor(int color); - int getColor(); - int hasColor(int _color); - int countColors(); + void setColor(int _color, int removeAllOthers = 0); + void setColor(string _color, int removeAllOthers = 0); + void removeColor(int color); + int getColor(); + int hasColor(int _color); + int countColors(); - int has(int ability); + int has(int ability); - void setText(const string& value); - const char * getText(); + void setText(const string& value); + const char * getText(); - void addMagicText(string value); - void addMagicText(string value, string zone); + void addMagicText(string value); + void addMagicText(string value, string zone); - void setName(const string& value); - const string& getName() const; - const string& getLCName() const; + void setName(const string& value); + const string& getName() const; + const string& getLCName() const; - void addType(char * type_text); - void addType(int id); - void setType(const string& type_text); - void setSubtype(const string& value); - int removeType(string value, int removeAll = 0); - int removeType(int value, int removeAll = 0); - bool hasSubtype(int _subtype); - bool hasSubtype(const char * _subtype); - bool hasSubtype(string _subtype); - bool hasType(int _type); - bool hasType(const char * type); + void addType(char * type_text); + void addType(int id); + void setType(const string& type_text); + void setSubtype(const string& value); + int removeType(string value, int removeAll = 0); + int removeType(int value, int removeAll = 0); + bool hasSubtype(int _subtype); + bool hasSubtype(const char * _subtype); + bool hasSubtype(string _subtype); + bool hasType(int _type); + bool hasType(const char * type); - void setManaCost(string value); - ManaCost * getManaCost(); - ManaCost * getReducedManaCost(); - ManaCost * getIncreasedManaCost(); - bool isCreature(); - bool isLand(); - bool isSpell(); + void setManaCost(string value); + ManaCost * getManaCost(); + ManaCost * getReducedManaCost(); + ManaCost * getIncreasedManaCost(); + bool isCreature(); + bool isLand(); + bool isSpell(); - void setPower(int _power); - int getPower(); - void setToughness(int _toughness); - int getToughness(); - void setRestrictions(string _restriction); - void getRestrictions(); - void setOtherRestrictions(string _restriction); - void getOtherRestrictions(); - const vector& formattedText(); + void setPower(int _power); + int getPower(); + void setToughness(int _toughness); + int getToughness(); + void setRestrictions(string _restriction); + void getRestrictions(); + void setOtherRestrictions(string _restriction); + void getOtherRestrictions(); + const vector& formattedText(); }; diff --git a/projects/mtg/src/CardPrimitive.cpp b/projects/mtg/src/CardPrimitive.cpp index d9eef23b0..e8570ac54 100644 --- a/projects/mtg/src/CardPrimitive.cpp +++ b/projects/mtg/src/CardPrimitive.cpp @@ -26,7 +26,7 @@ CardPrimitive::CardPrimitive(CardPrimitive * source) reducedCost.copy(source->getReducedManaCost()); increasedCost.copy(source->getIncreasedManaCost()); if(source->getManaCost()->alternative) - manaCost.alternative->alternativeName = source->getManaCost()->alternative->alternativeName; + manaCost.alternative->alternativeName = source->getManaCost()->alternative->alternativeName; text = source->text; setName(source->name); @@ -82,10 +82,12 @@ bool CardPrimitive::isCreature() { return hasSubtype(Subtypes::TYPE_CREATURE); } + bool CardPrimitive::isLand() { return hasSubtype(Subtypes::TYPE_LAND); } + bool CardPrimitive::isSpell() { return (!isCreature() && !isLand()); @@ -95,6 +97,7 @@ void CardPrimitive::setRestrictions(string _restriction) { restriction = _restriction; } + void CardPrimitive::getRestrictions() { restriction; @@ -104,6 +107,7 @@ void CardPrimitive::setOtherRestrictions(string _restriction) { otherrestriction = _restriction; } + void CardPrimitive::getOtherRestrictions() { otherrestriction;