Added CMR set, added Monarch game mode, added/fix several primitives and improved Android downloader.

This commit is contained in:
valfieri
2020-11-30 10:55:42 +01:00
parent d751ed3540
commit c704dfbfb2
18 changed files with 5392 additions and 266 deletions

View File

@@ -1194,6 +1194,14 @@ TriggeredAbility * AbilityFactory::parseTrigger(string s, string, int id, Spell
if (TargetChooser * tc = parseSimpleTC(s, "energizedfoeof", card))
return NEW TrplayerEnergized(observer, id, card, tc,once,false,true);
//becomes monarch - controller of card
if (TargetChooser * tc = parseSimpleTC(s, "becomesmonarchof", card))
return NEW TrplayerMonarch(observer, id, card, tc,once,true,false);
//becomes monarch - opponent of card controller
if (TargetChooser * tc = parseSimpleTC(s, "becomesmonarchfoeof", card))
return NEW TrplayerMonarch(observer, id, card, tc,once,false,true);
//drawn player - controller of card - dynamic version drawof(player) -> returns current controller even with exchange of card controller
if (TargetChooser * tc = parseSimpleTC(s, "drawof", card))
return NEW TrcardDrawn(observer, id, card, tc,once,true,false);
@@ -3372,6 +3380,16 @@ MTGAbility * AbilityFactory::parseMagicLine(string s, int id, Spell * spell, MTG
return a;
}
//becomes monarch
vector<string> splitMonarch = parseBetween(s, "becomesmonarch", " ", false);
if (splitMonarch.size())
{
Targetable * t = spell ? spell->getNextTarget() : NULL;
MTGAbility * a = NEW AAAlterMonarch(observer, id, card, t, NULL, who);
a->oneShot = 1;
return a;
}
//alter mutation counter on target card with trigger activation
vector<string> splitMutated = parseBetween(s, "altermutationcounter:", " ", false);
if (splitMutated.size())