revised "steal" ability

steal - gain control of target/s until it leaves battlefield or  its
current controller loses control of the "stealer"...
This commit is contained in:
Anthony Calosa
2016-09-06 15:47:09 +08:00
parent d2183f3b91
commit 7f8339aedf
13 changed files with 223 additions and 101 deletions

View File

@@ -5386,6 +5386,38 @@ public:
ABlockSetCost * clone() const;
};
//ASeize
class ASeize: public MTGAbility
{
public:
MTGCardInstance * Seized;
Player * previousController;
bool resolved;
ASeize(GameObserver* observer, int _id, MTGCardInstance * card, MTGCardInstance * _target);
void Update(float dt);
void resolveSeize();
int resolve();
int receiveEvent(WEvent * event);
const string getMenuText();
ASeize * clone() const;
~ASeize();
private:
void returntoOwner(MTGCardInstance *_target);
};
//SeizeWrapper
class ASeizeWrapper: public InstantAbility
{
public:
ASeize * ability;
ASeizeWrapper(GameObserver* observer, int _id, MTGCardInstance * card, MTGCardInstance * _target);
int resolve();
const string getMenuText();
ASeizeWrapper * clone() const;
~ASeizeWrapper();
};
//AShackle
class AShackle: public MTGAbility
{
@@ -5416,6 +5448,7 @@ public:
~AShackleWrapper();
};
//Grant
class AGrant : public MTGAbility
{
@@ -5448,6 +5481,7 @@ public:
~AGrantWrapper();
};
//ABlink
class ABlink: public MTGAbility
{