Support for KLD and AER

Kaladesh & Aether Revolt
This commit is contained in:
Anthony Calosa
2017-01-18 22:13:51 +08:00
parent d86b9119a4
commit d03ebdace8
14 changed files with 306 additions and 20 deletions

View File

@@ -560,6 +560,14 @@ private:
{
intValue = card->controller()->opponent()->raidcount;
}
else if (s == "pstormcount")
{
intValue = card->controller()->game->stack->seenThisTurn("*", Constants::CAST_ALL);
}
else if (s == "ostormcount")
{
intValue = card->controller()->opponent()->game->stack->seenThisTurn("*", Constants::CAST_ALL);
}
else if (s == "countallspell")
{
intValue = card->controller()->game->stack->seenThisTurn("*", Constants::CAST_ALL) + card->controller()->opponent()->game->stack->seenThisTurn("*", Constants::CAST_ALL);
@@ -4514,6 +4522,19 @@ public:
AAAlterPoison * clone() const;
~AAAlterPoison();
};
//Energy Counter
class AAAlterEnergy: public ActivatedAbilityTP
{
public:
int energy;
AAAlterEnergy(GameObserver* observer, int _id, MTGCardInstance * _source, Targetable * _target, int energy, ManaCost * _cost = NULL,
int who = TargetChooser::UNSET);
int resolve();
const string getMenuText();
AAAlterEnergy * clone() const;
~AAAlterEnergy();
};
/* Standard Damager, can choose a NEW target each time the price is paid */
class TADamager: public TargetAbility
{

View File

@@ -216,6 +216,19 @@ public:
virtual SnowCost * clone() const;
};
//Energy cost
class EnergyCost : public ExtraCost
{
private:
int enc;
public:
EnergyCost(int enc = 0);
virtual int canPay();
virtual int doPay();
virtual EnergyCost * clone() const;
};
//untap cost
class UnTapCost : public ExtraCost
{
@@ -295,6 +308,16 @@ public:
virtual int doPay();
virtual Delve * clone() const;
};
//improvise
class Improvise : public ExtraCost
{
public:
Improvise(TargetChooser *_tc = NULL);
virtual int canPay();
virtual int isPaymentSet();
virtual int doPay();
virtual Improvise * clone() const;
};
//offering cost
class Offering : public ExtraCost
{

View File

@@ -262,7 +262,9 @@ class Constants
CONDUITED = 140,
CANBLOCKTAPPED = 141,
OPPNOMAXHAND = 142,
NB_BASIC_ABILITIES = 143,
CANTCREW = 143,
HIDDENFACE = 144,
NB_BASIC_ABILITIES = 145,
RARITY_S = 'S', //Special Rarity
RARITY_M = 'M', //Mythics

View File

@@ -42,6 +42,7 @@ public:
int skippingTurn;
int extraTurn;
int drawCounter;
int energyCount;
int epic;
int forcefield;
int initLife;