diff --git a/projects/mtg/bin/Res/sets/primitives/mtg.txt b/projects/mtg/bin/Res/sets/primitives/mtg.txt index c29fe830a..2cb306c77 100644 --- a/projects/mtg/bin/Res/sets/primitives/mtg.txt +++ b/projects/mtg/bin/Res/sets/primitives/mtg.txt @@ -68366,6 +68366,13 @@ mana={3}{G}{G} type=Sorcery [/card] [card] +name=Parallel Lives +abilities=tokenizer +text=If an effect would put one or more tokens onto the battlefield under your control, it puts twice that many of those tokens onto the battlefield instead. +mana={3}{G} +type=Enchantment +[/card] +[card] name=Paralyze target=creature auto=tap diff --git a/projects/mtg/include/AllAbilities.h b/projects/mtg/include/AllAbilities.h index 1e7d361cd..e3eb4a783 100644 --- a/projects/mtg/include/AllAbilities.h +++ b/projects/mtg/include/AllAbilities.h @@ -3140,7 +3140,7 @@ public: SAFE_DELETE(NewPow); SAFE_DELETE(NewTou); } - for (int i = 0; i < multiplier->getValue(); ++i) + for (int i = 0; i < Tokenizer(); ++i) { //MTGCardInstance * myToken; if (tokenId) @@ -3199,6 +3199,23 @@ public: return 1; } + int Tokenizer()//tokenizer + { + int tokenize = 1; + if (source->controller()->game->battlefield->hasAbility(Constants::TOKENIZER)) + { + int nbcards = source->controller()->game->battlefield->nb_cards; + for (int j = 0; j < nbcards; j++) + { + if (source->controller()->game->battlefield->cards[j]->has(Constants::TOKENIZER)) + tokenize *= 2; + } + return multiplier->getValue()*tokenize; + } + else + return multiplier->getValue(); + } + void setTokenOwner() { switch(who) diff --git a/projects/mtg/include/MTGDefinitions.h b/projects/mtg/include/MTGDefinitions.h index 08667058e..1240c25ca 100644 --- a/projects/mtg/include/MTGDefinitions.h +++ b/projects/mtg/include/MTGDefinitions.h @@ -219,7 +219,8 @@ class Constants LURE = 101, NOLEGEND = 102, CANPLAYFROMGRAVEYARD = 103, - NB_BASIC_ABILITIES = 104, + TOKENIZER = 104, + NB_BASIC_ABILITIES = 105, RARITY_S = 'S', //Special Rarity diff --git a/projects/mtg/src/MTGDefinitions.cpp b/projects/mtg/src/MTGDefinitions.cpp index 3161c3749..952f0be75 100644 --- a/projects/mtg/src/MTGDefinitions.cpp +++ b/projects/mtg/src/MTGDefinitions.cpp @@ -132,7 +132,8 @@ const char* Constants::MTGBasicAbilities[] = { "soulbond", "lure", "nolegend", - "canplayfromgraveyard" + "canplayfromgraveyard", + "tokenizer"//parallel lives }; map Constants::MTGBasicAbilitiesMap;