Fixed Etchings of the Chosen (issue #1051 by @ranger7271), added primitives with choose card name, added two keywords "chooseaname" and "chooseanameopp" to choose a card name ("chosenname" and "lastchoosenname") between your cards or opponent cards, added a keyword "[attached]" to target equipment attached to a permanent.

This commit is contained in:
Vittorio Alfieri
2021-01-26 20:47:33 +01:00
parent c60f8787d1
commit dd844fc25e
15 changed files with 288 additions and 86 deletions

View File

@@ -6469,19 +6469,37 @@ public:
AASetTypeChosen * clone() const;
~AASetTypeChosen();
};
class GenericChooseTypeColor: public ActivatedAbility
class AASetNameChosen: public InstantAbility
{
public:
string name;
string abilityToAlter;
string menutext;
MTGAbility * abilityAltered;
AASetNameChosen(GameObserver* observer, int id, MTGCardInstance * source, MTGCardInstance * target, string _name = "",string menu = "error" ,string toAdd = "");
int resolve();
const string getMenuText();
AASetNameChosen * clone() const;
~AASetNameChosen();
};
class GenericChooseTypeColorName: public ActivatedAbility
{
public:
string baseAbility;
bool chooseColor;
bool chooseName;
bool chooseOppName;
AASetColorChosen * setColor;
AASetTypeChosen * setType;
AASetNameChosen * setName;
bool ANonWall;
GenericChooseTypeColor(GameObserver* observer, int id, MTGCardInstance * source, Targetable * target, string toAdd = "",bool chooseColor = false,bool nonwall = false, ManaCost * cost = NULL);
bool ANonBasicLand;
bool ANonLand;
GenericChooseTypeColorName(GameObserver* observer, int id, MTGCardInstance * source, Targetable * target, string toAdd = "", bool chooseColor = false,bool chooseName = false, bool chooseOppName = false, bool nonwall = false, bool nonbasicland = false, bool nonland = false, ManaCost * cost = NULL);
int resolve();
const string getMenuText();
GenericChooseTypeColor * clone() const;
~GenericChooseTypeColor();
GenericChooseTypeColorName * clone() const;
~GenericChooseTypeColorName();
};
//------------------------------------------------

View File

@@ -78,6 +78,7 @@ class CardDescriptor: public MTGCardInstance
int CDcontrollerDamaged;
int CDdamager;
int CDgeared;
int CDattached;
int CDblocked;
int CDcanProduceC;
int CDcanProduceG;

View File

@@ -112,6 +112,7 @@ public:
bool isFacedown;
int chooseacolor;
string chooseasubtype;
string chooseaname;
int coinSide;//1 = tails
int lastFlipResult;
int dieSide;

View File

@@ -60,6 +60,7 @@ public:
int snowManaU;
int snowManaW;
int snowManaC;
string lastChosenName;
vector<string> prowledTypes;
vector<MTGCardInstance*>curses;
Player(GameObserver *observer, string deckFile, string deckFileSmall, MTGDeck * deck = NULL);