From 452cf4793f1eea6e51a92c1c3454ce029075d016 Mon Sep 17 00:00:00 2001 From: Vittorio Alfieri Date: Wed, 17 May 2023 15:13:25 +0200 Subject: [PATCH] Fixed some primitives, added some new primitives from MOM set. --- .../bin/Res/sets/primitives/borderline.txt | 205 +++++++++++++++++- .../bin/Res/sets/primitives/planeswalkers.txt | 14 ++ 2 files changed, 216 insertions(+), 3 deletions(-) diff --git a/projects/mtg/bin/Res/sets/primitives/borderline.txt b/projects/mtg/bin/Res/sets/primitives/borderline.txt index 1acc2bb2f..8911b5a73 100644 --- a/projects/mtg/bin/Res/sets/primitives/borderline.txt +++ b/projects/mtg/bin/Res/sets/primitives/borderline.txt @@ -2065,6 +2065,19 @@ power=5 toughness=7 [/card] [card] +name=Ancient Imperiosaur +abilities=trample +auto=_WARD_(2) +other={convoke} name(Convoke) +auto=if paid(alternative) then foreach(creature[tapped;-attacking]|myBattlefield) counter(1/1,2) +text=Convoke (Your creatures can help cast this spell. Each creature you tap while casting this spell pays for {1} or one mana of that creature's color.) -- Trample, ward {2} -- Ancient Imperiosaur enters the battlefield with two +1/+1 counters on it for each creature that convoked it. +mana={5}{G}{G} +type=Creature +subtype=Dinosaur +power=6 +toughness=6 +[/card] +[card] name=Ancient Lumberknot auto=lord(creature[power=0]|mybattlefield) transforms((,newability[this(toughness>=1) combattoughness])) auto=lord(creature[power=1]|mybattlefield) transforms((,newability[this(toughness>=2) combattoughness])) @@ -6046,6 +6059,18 @@ mana={2}{U} type=Instant [/card] [card] +name=Baral and Kari Zev +abilities=first strike,menace +auto=@movedTo(*[instant]|myStack) restriction{thisturn(*[instant;sorcery]|myStack)~lessthan~1} turnlimited:name(Casted first instant) all(trigger[to]) transforms((,newability[if type(instant[manacost<=manacostminus1minusend]|myhand)~morethan~0 then choice name(Cast another spell) target(instant[manacost<=manacostminus1minusend]|myhand) activate castcard(normal)],newability[choice name(Create pirate) token(First Mate Ragavan^Legendary Monkey Pirate Creature^2/1^red) and!( transforms((,newability[haste])) ueot)!])) oneshot +auto=@movedTo(*[sorcery]|myStack) restriction{thisturn(*[instant;sorcery]|myStack)~lessthan~1} turnlimited:name(Casted first sorcery) all(trigger[to]) transforms((,newability[if type(sorcery[manacost<=manacostminus1minusend]|myhand)~morethan~0 then choice name(Cast another spell) target(sorcery[manacost<=manacostminus1minusend]|myhand) activate castcard(normal)],newability[choice name(Create pirate) token(First Mate Ragavan^Legendary Monkey Pirate Creature^2/1^red) and!( transforms((,newability[haste])) ueot)!])) oneshot +text=First strike, menace -- Whenever you cast your first instant or sorcery spell each turn, you may cast a spell with lesser mana value that shares a card type with it from your hand without paying its mana cost. If you don't, create First Mate Ragavan, a legendary 2/1 red Monkey Pirate creature token. It gains haste until end of turn. +mana={1}{U}{R} +type=Legendary Creature +subtype=Human +power=2 +toughness=4 +[/card] +[card] name=Barbarian Bully auto={0} restriction{compare(opponentlifetotal)~lessthan~5}:name(Discard a random card) discard:1 && all(this) 2/2 ueot limit:1 auto={0} restriction{compare(opponentlifetotal)~morethan~4}:name(Discard a random card) transforms((,newability[discard:1 controller],newability[if compare(genrand2)~equalto~0 then 2/2 ueot else damage:4 opponent])) oneshot limit:1 @@ -8298,6 +8323,16 @@ power=2 toughness=1 [/card] [card] +name=Blighted Burgeoning +target=land +auto=name(Incubate 2) name(Incubate 2) activate castcard(noevent costx!:2:! named!:Incubator:!) +auto=teach(land) transforms((,newability[@tappedformana(this):chooseacolor add{chosencolor} chooseend])) +text=Enchant land -- When Blighted Burgeoning enters the battlefield, incubate 2. (Create an Incubator token with two +1/+1 counters on it and "{2}: Transform this artifact." It transforms into a 0/0 Phyrexian artifact creature.) -- Whenever enchanted land is tapped for mana, its controller adds an additional one mana of any color. +mana={2}{G} +type=Enchantment +subtype=Aura +[/card] +[card] name=Blightreaper Thallid backside=Blightsower Thallid restriction=compare(isflipped)~equalto~0 @@ -10044,6 +10079,18 @@ mana={3} type=Artifact [/card] [card] +name=Botanical Brawler +abilities=trample +auto=counter(1/1,2) +auto=lord(other *|mybattlefield) transforms((,newability[@counteradded(1/1) from(this) turnlimited:name(Put 1/1 counter) all(Botanical Brawler|mybattlefield) counter(1/1)])) +text=Trample -- Botanical Brawler enters the battlefield with two +1/+1 counters on it. -- Whenever one or more +1/+1 counters are put on another permanent you control, if it's the first time +1/+1 counters have been put on that permanent this turn, put a +1/+1 counter on Botanical Brawler. +mana={G}{W} +type=Creature +subtype=Elemental Warrior +power=0 +toughness=0 +[/card] +[card] name=Botanical Plaza auto=tap(noevent) auto={T}:Add{G} @@ -20551,6 +20598,18 @@ mana={2}{U} type=Enchantment [/card] [card] +name=Deeproot Wayfinder +aicode=activate transforms((,newability[surveil],newability[all(*[zpos<=psurveiloffsetplus1plusend]|mylibrary) transforms((,newability[if compare(genrand2)~equalto~1 then moveto(mygraveyard) and!( transforms((,newability[target(land|mygraveyard) moveto(mybattlefield) and!( tap(noevent) )!])) oneshot )!])) oneshot])) oneshot +auto=@combatdamaged(player) from(this):name(Surveil 1) reveal:psurveiloffsetplus1plusend optionone name(put in graveyard) target(*|reveal) moveto(ownergraveyard) optiononeend optiontwo name(put in library) target(*|reveal) moveto(ownerlibrary) optiontwoend afterrevealed transforms((,newability[surveil],newability[may name(Return land) target(land|mygraveyard) moveto(mybattlefield) and!( tap(noevent) )!])) oneshot afterrevealedend revealend +auto=@combatdamaged(battle|opponentbattlefield) from(this):name(Surveil 1) reveal:psurveiloffsetplus1plusend optionone name(put in graveyard) target(*|reveal) moveto(ownergraveyard) optiononeend optiontwo name(put in library) target(*|reveal) moveto(ownerlibrary) optiontwoend afterrevealed transforms((,newability[surveil],newability[may name(Return land) target(land|mygraveyard) moveto(mybattlefield) and!( tap(noevent) )!])) oneshot afterrevealedend revealend +text=Whenever Deeproot Wayfinder deals combat damage to a player or battle, surveil 1, then you may return a land card from your graveyard to the battlefield tapped. (To surveil 1, look at the top card of your library. You may put that card into your graveyard.) +mana={1}{G} +type=Creature +subtype=Merfolk Scout +power=2 +toughness=3 +[/card] +[card] name=Deepwood Denizen abilities=vigilance auto=this(variable{totcntcre11}=0) {5}{G}{T}:draw:1 controller @@ -22822,6 +22881,21 @@ power=4 toughness=4 [/card] [card] +name=Doomskar Warrior +abilities=trample +aicode=activate transforms((,newability[if type(creature[zpos<=thatmuch]|myLibrary)~morethan~0 then target(creature[zpos<=thatmuch]|myLibrary) moveTo(myHand) and!( all(other *[zpos<=thatmuch]|mylibrary) moveto(myreveal) and!( bottomoflibrary )! )! else all(*[zpos<=thatmuch]|mylibrary) moveto(myreveal) and!( bottomoflibrary )! ])) oneshot +auto=@combatdamaged(player) from(this):name(Reveal cards) reveal:thatmuch optionone name(put in hand) target(*[land;creature]|reveal) moveto(myhand) optiononeend optiontwo name(put on bottom) target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend +auto=@combatdamaged(battle|opponentbattlefield) from(this):name(Reveal cards) reveal:thatmuch optionone name(put in hand) target(*[land;creature]|reveal) moveto(myhand) optiononeend optiontwo name(put on bottom) target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend +auto=choice name(Target this creature) all(this) counter(1/1) +auto=choice name(Target other creature) target(other creature) transforms((,newability[counter(1/1)],newability[@combatdamaged(battle|opponentbattlefield) from(this):name(Reveal cards) reveal:thatmuch optionone name(put in hand) target(*[land;creature]|reveal) moveto(myhand) optiononeend optiontwo name(put on bottom) target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend],newability[@combatdamaged(player) from(this):name(Reveal cards) reveal:thatmuch optionone name(put in hand) target(*[land;creature]|reveal) moveto(myhand) optiononeend optiontwo name(put on bottom) target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend])) forever +text=Backup 1 -- Trample -- Whenever this creature deals combat damage to a player or battle, look at that many cards from the top of your library. You may reveal a creature or land card from among them and put it into your hand. Put the rest on the bottom of your library in a random order. +mana={2}{G}{G} +type=Creature +subtype=Human Warrior +power=4 +toughness=3 +[/card] +[card] name=Dormant Gomazoa abilities=flying,doesnotuntap auto=tap(noevent) @@ -46344,6 +46418,22 @@ power=3 toughness=3 [/card] [card] +name=Kami of Whispered Hopes +auto={T}:name(Add red mana) thisforeach(variable{power}>0) add{R} +auto={T}:name(Add white mana) thisforeach(variable{power}>0) add{W} +auto={T}:name(Add blue mana) thisforeach(variable{power}>0) add{U} +auto={T}:name(Add black mana) thisforeach(variable{power}>0) add{B} +auto={T}:name(Add green mana) thisforeach(variable{power}>0) add{G} +auto=@counteradded(1/1) from(*|myBattlefield) except(Kami of Whispered Hopes):may name(Add counter) all(trigger[from]) counter(1/1) +auto=@counteradded(1/1) from(this):may name(Add counter) all(trigger[from]) counter(1/1) +text=If one or more +1/+1 counters would be put on a permanent you control, that many plus one +1/+1 counters are put on that permanent instead. -- {T}: Add X mana of any one color, where X is Kami of Whispered Hopes's power. +mana={2}{G} +type=Creature +subtype=Spirit +power=1 +toughness=1 +[/card] +[card] name=Kangee's Lieutenant abilities=flying auto=_ATTACKING_all(creature[attacking;flying]) 1/1 ueot @@ -61267,6 +61357,17 @@ text=Overgrown Farmland enters the battlefield tapped unless you control two or type=Land [/card] [card] +name=Overgrown Pest +aicode=activate transforms((,newability[if type(*[land;hasbackside;zpos<=5]|myLibrary)~morethan~0 then target(*[land;hasbackside;zpos<=5]|myLibrary) moveTo(myHand) and!( all(other *[zpos<=5]|mylibrary) moveto(myreveal) and!( bottomoflibrary )! )! else all(*[zpos<=5]|mylibrary) moveto(myreveal) and!( bottomoflibrary )! ])) oneshot +auto=name(Look top 5 cards) reveal:5 optionone name(Choose a card) target(*[land;hasbackside]|reveal) moveto(myhand) optiononeend optiontwo name(Put on bottom) target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend +text=When Overgrown Pest enters the battlefield, look at the top five cards of your library. You may reveal a land or double-faced card from among them and put that card into your hand. Put the rest on the bottom of your library in a random order. +mana={2}{G} +type=Creature +subtype=Pest +power=2 +toughness=2 +[/card] +[card] name=Overgrowth Elemental auto=target(other creature[elemental]) counter(1/1) auto=@movedto(other creature[elemental]|graveyard) from(mybattlefield):counter(1/1) @@ -61424,6 +61525,18 @@ power=7 toughness=5 [/card] [card] +name=Ozolith, the Shattered Spire +abilities=cycling +autohand=__CYCLING__({2}) +auto={1}{G}{T}:name(Put 1/1 counter on other target) counter(1/1,2) target(other *[artifact;creature]|myBattlefield) asSorcery +auto={1}{G}{T}:name(Put 1/1 counter on this artifact) counter(1/1) asSorcery +auto=@counteradded(1/1) from(*[creature;artifact]|myBattlefield) except(Ozolith, the Shattered Spire):may name(Add counter) all(trigger[from]) counter(1/1) +auto=@counteradded(1/1) from(this):may name(Add counter) all(trigger[from]) counter(1/1) +text=If one or more +1/+1 counters would be put on an artifact or creature you control, that many plus one +1/+1 counters are put on it instead. -- {1}{G}, {T}: Put a +1/+1 counter on target artifact or creature you control. Activate only as a sorcery. -- Cycling {2} ({2}, Discard this card: Draw a card.) +mana={1}{G} +type=Legendary Artifact +[/card] +[card] name=Pack Attack auto=all(creature[attacking]) 1/0 auto=draw:1 @@ -72950,6 +73063,18 @@ mana={4} type=Artifact [/card] [card] +name=Sandstalker Moloch +abilities=flash +aicode=activate transforms((,newability[if type(*[-instant;-sorcery;zpos<=4]|myLibrary)~morethan~0 then target(*[-instant;-sorcery;zpos<=5]|myLibrary) moveTo(myHand) and!( all(other *[zpos<=4]|mylibrary) moveto(myreveal) and!( bottomoflibrary )! )! else all(*[zpos<=4]|mylibrary) moveto(myreveal) and!( bottomoflibrary )! ])) oneshot +auto=transforms((,newability[@movedto(*[blue;black]|opponentstack):name(Look top 4 cards) reveal:4 optionone name(Choose a permanent) target(*[-instant;-sorcery]|reveal) moveto(myhand) optiononeend optiontwo name(Put on bottom) target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend])) ueot +text=Flash -- When Sandstalker Moloch enters the battlefield, if an opponent cast a blue and/or black spell this turn, look at the top four cards of your library. You may reveal a permanent card from among them and put it into your hand. Put the rest on the bottom of your library in a random order. +mana={1}{G}{G} +type=Creature +subtype=Lizard +power=4 +toughness=2 +[/card] +[card] name=Sandstone Oracle abilities=flying auto=if type(*|opponenthand)~morethan~type(*|myhand) then name(Draw cards) name(Draw cards) draw:ohandcountminusphandcountminusend controller @@ -74880,6 +75005,13 @@ mana={1}{U} type=Sorcery [/card] [card] +name=Seed of Hope +auto=all(*[zpos=2]|mylibrary) moveto(mygraveyard) and!( transforms((,newability[if cantargetcard(*[-instant;-sorcery]|*) then counter(0/0.1.SeedDepleted) notrg],newability[all(*[zpos=1]|mylibrary) moveto(mygraveyard) and!( transforms((,newability[life:2 controller],newability[if cantargetcard(*[-instant;-sorcery]|*) then counter(0/0.1.SeedDepleted) notrg],newability[if type(*[-instant;-sorcery;counter{0/0.1.SeedDepleted}]|mygraveyard)~morethan~0 then choice name(Return permanent) name(Return permanent) target(*[-instant;-sorcery;counter{0/0.1.SeedDepleted}]|mygraveyard) moveto(myhand) and!( all(*[counter{0/0.1.SeedDepleted}]|mygraveyard) removeallcounters(0/0.1.SeedDepleted) )!],newability[choice name(Don't return permanent) all(*[counter{0/0.1.SeedDepleted}]|mygraveyard) removeallcounters(0/0.1.SeedDepleted)])) oneshot )!])) oneshot )! +text=Mill two cards. You may put a permanent card from among the milled cards into your hand. You gain 2 life. (To mill two cards, put the top two cards of your library into your graveyard.) +mana={G} +type=Instant +[/card] +[card] name=Seeds of Strength target=creature auto=1/1 ueot @@ -85991,6 +86123,15 @@ type=Land subtype=Forest Island [/card] [card] +name=Tangled Skyline +auto=life:5 controller +auto=name(Incubate 5) name(Incubate 5) activate castcard(noevent costx!:5:! named!:Incubator:!) +auto=lord(phyrexian|myBattlefield) reach +text=When Tangled Skyline enters the battlefield, you gain 5 life and incubate 5. (Create an Incubator token with five +1/+1 counters on it and "{2}: Transform this artifact." It transforms into a 0/0 Phyrexian artifact creature.) -- Phyrexians you control have reach. +mana={4}{G} +type=Enchantment +[/card] +[card] name=Tangled Vale auto=tap(noevent) auto={T}:add{G} @@ -87295,7 +87436,7 @@ auto=thisforeach(variable{5}) name(Incubate 2 five times) name(Incubate 2 five t auto=name(Transform all incubators) all(incubator|mybattlefield) flip(backside) auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.2.Lore}=) name(Creatures gain 1/1) all(creature|mybattlefield) transforms((,newability[1/1],newability[double strike])) ueot auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.3.Lore}) name(Destroy all prermanents) all(other *[-land;-phyrexian;-artifact]) destroy -auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.3.Lore}) name(Exile and return) moveto(myexile) and!( moveto(mybattlefield) )! +auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.3.Lore}) name(Exile and return) moveto(myexile) and!( moveto(mybattlefield) and!( transforms((Legendary)) forever )! )! text=(As this Saga enters and after your draw step, add a lore counter.) -- I - Incubate 2 five times, then transform all Incubator tokens you control. -- II - Creatures you control get +1/+1 and gain double strike until end of turn. -- III - Destroy all other permanents except for artifacts, lands, and Phyrexians. Exile The Argent Etchings, then return it to the battlefield (front face up). type=Enchantment subtype=Saga @@ -87629,6 +87770,21 @@ type=Enchantment subtype=Saga [/card] [card] +name=The Grand Evolution +auto=counter(0/0,1,Lore) +auto=@each my firstmain:counter(0/0,1,Lore) +auto=all(*[zpos=10]|mylibrary) moveto(mygraveyard) and!( transforms((,newability[counter(0/0.1.EvolutionDepleted)])) ueot )! +auto=all(*[zpos<=9]|mylibrary) moveto(mygraveyard) and!( transforms((,newability[counter(0/0.1.EvolutionDepleted) notrg])) ueot )! +auto=@counteradded(0/0,1,EvolutionDepleted) from(*|mygraveyard) restriction{compare(hascntdepletedone)~equalto~0,compare(hascntlore)~equalto~1} turnlimited:name(Return creature) name(Return creature) name(Return creature) transforms((,newability[counter(0/0.1.Depletedone) notrg],newability[if type(creature[counter{0/0.1.EvolutionDepleted}]|mygraveyard)~morethan~1 then choice name(Return 2 creatures) name(Return 2 creatures) target(creature[counter{0/0.1.EvolutionDepleted}]|mygraveyard) moveto(mybattlefield) and!( all(*[counter{0/0.1.EvolutionDepleted}]|mygraveyard) removeallcounters(0/0.1.EvolutionDepleted) )!],newability[if type(creature[counter{0/0.1.EvolutionDepleted}]|mygraveyard)~morethan~0 then choice name(Return 1 creature) name(Return 1 creature) target(creature[counter{0/0.1.EvolutionDepleted}]|mygraveyard) moveto(mybattlefield) and!( all(*[counter{0/0.1.EvolutionDepleted}]|mygraveyard) removeallcounters(0/0.1.EvolutionDepleted) )!],newability[if type(*[counter{0/0.1.EvolutionDepleted}]|mygraveyard)~morethan~0 then choice name(Don't Return any creature) name(Don't Return any creature) all(*[counter{0/0.1.EvolutionDepleted}]|mygraveyard) removeallcounters(0/0.1.EvolutionDepleted)])) oneshot +auto=@counteradded(0/0,1,Lore) from(this) restriction{compare(hascntlore)~equalto~2}:name(Distribute 1/1 counters) transforms((,newability[thisforeach(variable{7}) ability$!name(Put 1/1 counter) target(creature|mybattlefield) counter(1/1)!$ controller])) oneshot +auto=@counteradded(0/0,1,Lore) from(this) restriction{compare(hascntlore)~equalto~3}:name(Creatures can fight) name(Creatures can fight) all(creature|myBattlefield) transforms((,newability[{1}:name(Fights opponent creature) target(creature|opponentbattlefield) dynamicability])) +auto=@counteradded(0/0,1,Lore) from(this) restriction{compare(hascntlore)~equalto~3}:name(Exile and return) moveto(myexile) and!( moveto(mybattlefield) and!( transforms((,newability[becomes(Legendary) forever],newability[@movedto(creature|mybattlefield):name(Creatures can fight) name(Creatures can fight) all(trigger[to]) transforms((,newability[{1}:name(Fights opponent creature) target(creature|opponentbattlefield) dynamicability])) ueot])) ueot )! )! +text=(As this Saga enters and after your draw step, add a lore counter.) -- I — Mill ten cards. Put up to two creature cards from among the milled cards onto the battlefield. -- II — Distribute seven +1/+1 counters among any number of target creatures you control. -- III — Until end of turn, creatures you control gain "{1}: This creature fights target creature you don't control." Exile The Grand Evolution, then return it to the battlefield (front face up). +color=green +type=Enchantment +subtype=Saga +[/card] +[card] name=The Great Henge autoexile=thisforeach(variable{pwr:highest:creature:mybattlefield}>0) changecost(colorless:-1) forcedalive autograveyard=thisforeach(variable{pwr:highest:creature:mybattlefield}>0) changecost(colorless:-1) forcedalive @@ -87647,12 +87803,25 @@ auto=@each my firstmain:counter(0/0,1,Lore) auto=draw:type:*:myhand controller auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.2.Lore}=) name(Return creatures) all(creature[-phyrexian]|battlefield) moveto(ownerhand) auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.3.Lore}) name(Cast spells for zero) target(*[-land]|myhand) activate castcard(normal) -auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.3.Lore}) name(Exile and return) moveto(myexile) and!( moveto(mybattlefield) )! +auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.3.Lore}) name(Exile and return) moveto(myexile) and!( moveto(mybattlefield) and!( transforms((Legendary)) forever )! )! text=(As this Saga enters and after your draw step, add a lore counter.) -- I - Draw cards equal to the number of cards in your hand. You have no maximum hand size for as long as you control The Great Synthesis. -- II - Return all non-Phyrexian creatures to their owners' hands. -- III - You may cast any number of spells from your hand without paying their mana costs. Exile The Great Synthesis, then return it to the battlefield (front face up). type=Enchantment subtype=Saga [/card] [card] +name=The Great Work +auto=counter(0/0,1,Lore) +auto=@each my firstmain:counter(0/0,1,Lore) +auto=name(Damage opponent and creatures) damage:3 opponent && damage:3 all(creature|opponentbattlefield) +auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.2.Lore}=) name(Create 3 treasures) token(Treasure Sur)*3 +auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.3.Lore}) name(Cast spells from graveyard) name(Cast spells from graveyard) all(*[instant;sorcery]|mygraveyard) transforms((,newability[canplayfromgraveyard],newability[gainedexiledeath])) ueot +auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.3.Lore}) name(Exile and return) moveto(myexile) and!( moveto(mybattlefield) and!( transforms((,newability[becomes(Legendary) forever],newability[@movedto(*[instant;sorcery]|mygraveyard):name(Cast spells from graveyard) name(Cast spells from graveyard) all(trigger[to]) transforms((,newability[canplayfromgraveyard],newability[gainedexiledeath])) ueot])) ueot )! )! +text=(As this Saga enters and after your draw step, add a lore counter.) -- I — The Great Work deals 3 damage to target opponent and each creature they control. -- II — Create three Treasure tokens. -- III — Until end of turn, you may cast instant and sorcery spells from any graveyard. If a spell cast this way would be put into a graveyard, exile it instead. Exile The Great Work, then return it to the battlefield (front face up). +color=red +type=Enchantment +subtype=Saga +[/card] +[card] name=The Haunt of Hightower abilities=flying, lifelink auto=_ATTACKING_ability$!name(discard) target(*|myhand) reject!$ opponent @@ -87961,7 +88130,7 @@ auto=may name(Destroy creature or planeswalker) target(*[creature;planeswalker]| auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.2.Lore}=) name(Opponent mills 3 cards) deplete:3 opponent auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.2.Lore}=) name(Opponent discards 3 cards) ability$!name(Discards 3 cards) name(Discards 3 cards) notatarget(<3>*|myhand) reject!$ opponent auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.3.Lore}) name(Return all creatures) all(creature|graveyard) moveto(mybattlefield) -auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.3.Lore}) name(Exile and return) moveto(myexile) and!( moveto(mybattlefield) )! +auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.3.Lore}) name(Exile and return) moveto(myexile) and!( moveto(mybattlefield) and!( transforms((Legendary)) forever )! )! text=(As this Saga enters and after your draw step, add a lore counter.) -- I - For each opponent, destroy up to one target creature or planeswalker that player controls. -- II - Each opponent discards three cards, then mills three cards. -- III - Put all creature cards from all graveyards onto the battlefield under your control. Exile The True Scriptures, then return it to the battlefield (front face up). color=black type=Enchantment @@ -92731,6 +92900,21 @@ mana={2}{U} type=Instant [/card] [card] +name=Urabrask +abilities=first strike +backside=The Great Work +restriction=compare(isflipped)~equalto~0 +anyzone={0}:doubleside(backside) +auto=@movedTo(*[instant;sorcery]|mystack):name(Damage opponent and add mana) name(Damage opponent and add mana) transforms((,newability[damage:1 opponent],newability[add{R}])) oneshot +auto={R} restriction{thisturn(*[instant;sorcery]|mystack)~morethan~2}:name(Exile and return) name(Exile and return) moveto(myexile) and!( flip(backside) forcetype(Enchantment Saga) )! asSorcery +text=First strike -- Whenever you cast an instant or sorcery spell, Urabrask deals 1 damage to target opponent. Add {R}. -- {R}: Exile Urabrask, then return it to the battlefield transformed under its owner's control. Activate only as a sorcery and only if you've cast three or more instant and/or sorcery spells this turn. +mana={2}{R}{R} +type=Legendary Creature +subtype=Phyrexian Praetor +power=4 +toughness=4 +[/card] +[card] name=Urabrask's Anointer auto=damage:type:creature[counter{0/0.1.oil}]:mybattlefield target(creature,player) text=When Urabrask's Anointer enters the battlefield, it deals X damage to any target, where X is the number of permanents you control with oil counters on them. @@ -95650,6 +95834,21 @@ power=1 toughness=4 [/card] [card] +name=Vorinclex +abilities=reach,trample +backside=The Grand Evolution +restriction=compare(isflipped)~equalto~0 +anyzone={0}:doubleside(backside) +auto=may name(Search forest) target(forest|myLibrary) moveTo(myhand) and!( shuffle )! +auto={6}{G}{G}:name(Exile and return) name(Exile and return) moveto(myexile) and!( flip(backside) forcetype(Enchantment Saga) )! asSorcery +text=Trample, reach -- When Vorinclex enters the battlefield, search your library for up to two Forest cards, reveal them, put them into your hand, then shuffle. -- {6}{G}{G}: Exile Vorinclex, then return it to the battlefield transformed under its owner's control. Activate only as a sorcery. +mana={3}{G}{G} +type=Legendary Creature +subtype=Phyrexian Praetor +power=6 +toughness=6 +[/card] +[card] name=Vorinclex, Monstrous Raider abilities=trample,haste auto=@counteradded(duplicateAll) from(*|myBattlefield):ability$!name(Double the counter) donothing!$ controller diff --git a/projects/mtg/bin/Res/sets/primitives/planeswalkers.txt b/projects/mtg/bin/Res/sets/primitives/planeswalkers.txt index 063d94ab4..29d7660f6 100644 --- a/projects/mtg/bin/Res/sets/primitives/planeswalkers.txt +++ b/projects/mtg/bin/Res/sets/primitives/planeswalkers.txt @@ -3353,6 +3353,20 @@ type=Legendary Planeswalker subtype=Will [/card] [card] +name=Wrenn and Realmbreaker +auto=counter(0/0,4,loyalty) +auto=lord(land|mybattlefield) transforms((,newability[{T}:add{W}],newability[{T}:add{U}],newability[{T}:add{B}],newability[{T}:add{R}],newability[{T}:add{G}])) +auto=@counteradded(0/0,1,WrennDepleted) from(*|mygraveyard) turnlimited:name(Return permanent) transforms((,newability[if type(*[-instant;-sorcery;counter{0/0.1.WrennDepleted}]|mygraveyard)~morethan~0 then choice name(Return permanent) name(Return permanent) target(*[-instant;-sorcery;counter{0/0.1.WrennDepleted}]|mygraveyard) moveto(myhand) and!( all(*[counter{0/0.1.WrennDepleted}]|mygraveyard) removeallcounters(0/0.1.WrennDepleted) )!],newability[if type(*[-instant;-sorcery;counter{0/0.1.WrennDepleted}]|mygraveyard)~morethan~0 then choice name(Don't Return any permanent) name(Don't Return any permanent) all(*[counter{0/0.1.WrennDepleted}]|mygraveyard) removeallcounters(0/0.1.WrennDepleted)])) oneshot +auto={C(0/0,1,Loyalty)}:name(+1: Transform land) target(land|mybattlefield) transforms((Elemental Creature,setpower=3,settoughness=3,newability[haste],newability[vigilance],newability[opponentshroud])) uynt +auto={C(0/0,1,Loyalty)}:name(+1: Don't transform any land) donothing +auto={C(0/0,-2,Loyalty)}:name(-2: Mill and return) all(*[zpos<=2]|mylibrary) moveto(mygraveyard) and!( transforms((,newability[counter(0/0.1.WrennDepleted) notrg])) ueot )! && all(*[zpos=3]|mylibrary) moveto(mygraveyard) and!( transforms((,newability[counter(0/0.1.WrennDepleted)])) ueot )! +auto={C(0/0,-1,Loyalty)}:name(-7: Emblem play from graveyard) emblem transforms((,newability[lord(*[-instant;-sorcery]|mygraveyard) canplayfromgraveyard])) forever dontremove +text=Lands you control have "{T}: Add one mana of any color." -- [+1]: Up to one target land you control becomes a 3/3 Elemental creature with vigilance, hexproof, and haste until your next turn. It's still a land. -- [−2]: Mill three cards. You may put a permanent card from among the milled cards into your hand. -- [−7]: You get an emblem with "You may play lands and cast permanent spells from your graveyard." +mana={1}{G}{G} +type=Legendary Planeswalker +subtype=Wrenn +[/card] +[card] name=Wrenn and Seven auto=counter(0/0,5,loyalty) auto={C(0/0,1,Loyalty)}:name(+1: Reveal top 4 cards) reveal:4 optionone name(Put lands in hand) target(<4>land|reveal) moveto(myhand) optiononeend optiontwo name(Put in graveyard) all(*[-land]|reveal) moveto(mygraveyard) optiontwoend revealend