From 9b704e1cb6e10262d88423672e28c9f1f95a37c4 Mon Sep 17 00:00:00 2001 From: Eduardo MG Date: Sun, 23 Apr 2023 00:49:13 -0600 Subject: [PATCH] Bug fixes on primitives Buy Your Silence Rashmi, Eternities Crafter Eliminate Dennick, Pious Apparition Consuming Aberration should not target Derevi, Empyrial Tactician Zurzoth, Chaos Rider Aetherstorm Roc --- .../bin/Res/sets/primitives/borderline.txt | 21 ++++---- projects/mtg/bin/Res/sets/primitives/mtg.txt | 51 +++++++++---------- .../bin/Res/sets/primitives/planeswalkers.txt | 2 +- 3 files changed, 36 insertions(+), 38 deletions(-) diff --git a/projects/mtg/bin/Res/sets/primitives/borderline.txt b/projects/mtg/bin/Res/sets/primitives/borderline.txt index c657faf5f..43264c1bd 100644 --- a/projects/mtg/bin/Res/sets/primitives/borderline.txt +++ b/projects/mtg/bin/Res/sets/primitives/borderline.txt @@ -790,7 +790,7 @@ name=Aetherstorm Roc abilities=flying auto=alterenergy:1 controller auto=@movedTo(other creature|myBattlefield):alterenergy:1 controller -auto=_ATTACKING_pay({e:2}) counter(1/1) && tap(noevent) target(creature|opponentbattlefield) +auto=_ATTACKING_pay({e:2}) transforms((,newability[counter(1/1)],newability[may tap target(creature|opponentBattlefield)])) oneshot text=Flying -- Whenever Aetherstorm Roc or another creature enters the battlefield under your control, you get {E} (an energy counter). -- Whenever Aetherstorm Roc attacks, you may pay {E}{E}. If you do, put a +1/+1 counter on it and tap up to one target creature defending player controls. mana={2}{W}{W} type=Creature @@ -2968,7 +2968,7 @@ type=Artifact name=Arcane Subtraction target=creature auto=-4/0 ueot -auto=_LEARN_ +auto=_LEARN_ controller text=Target creature gets -4/-0 until end of turn. -- Learn. (You may reveal a Lesson card you own from outside the game and put it into your hand, or discard a card to draw a card.) mana={1}{U} type=Instant @@ -10757,8 +10757,7 @@ type=Sorcery [card] name=Buy Your Silence target=*[-land] -auto=moveto(exile) -auto=token(Treasure Sur) targetController +auto=moveto(exile) && create(Treasure Sur) targetController text=Exile target nonland permanent. Its controller creates a Treasure token. (It's an artifact with "{T}, Sacrifice this artifact: Add one mana of any color.") mana={4}{W} type=Sorcery @@ -19674,8 +19673,8 @@ type=Land name=Dennick, Pious Apparition backside=Dennick, Pious Apprentice abilities=flying,exiledeath -auto=@movedTo(creature|graveyard):name(Investigate) token(Clue) -text=Flying -- Whenever one or more creature cards are put into graveyards from anywhere, investigate. (Create a colorless Clue artifact token with "{2}, Sacrifice this artifact: Draw a card.") -- If Dennick, Pious Apparition would be put into a graveyard from anywhere, exile it instead. // Dennick, Pious Apprentice +auto=@movedTo(creature|graveyard) turnlimited:name(Investigate) token(Clue) +text=Flying -- Whenever one or more creature cards are put into graveyards from anywhere, investigate. This ability triggers only once each turn. (Create a Clue token. It's an artifact with "{2}, Sacrifice this artifact: Draw a card.") -- If Dennick, Pious Apparition would be put into a graveyard from anywhere, exile it instead. // Dennick, Pious Apprentice type=Legendary Creature subtype=Spirit Soldier color=white,blue @@ -19831,7 +19830,7 @@ name=Derevi, Empyrial Tactician abilities=flying auto=name(tap or untap) transforms((,newability[choice tap target(*)],newability[choice untap target(*)])) oneshot auto=@combatdamaged(player) from(creature|myBattlefield):name(tap or untap) transforms((,newability[choice tap target(*)],newability[choice untap target(*)])) oneshot -#wagic doesn't have command zone +autocommandzone={1}{G}{W}{U}:moveTo(battlefield) text=Flying -- Whenever Derevi, Empyrial Tactician enters the battlefield or a creature you control deals combat damage to a player, you may tap or untap target permanent. -- {1}{G}{W}{U}: Put Derevi onto the battlefield from the command zone. mana={G}{W}{U} type=Legendary Creature @@ -24056,8 +24055,8 @@ toughness=6 [/card] [card] name=Eliminate -auto=choice name(Destroy creature) target(creature[manacost<=3]) destroy -auto=choice name(Destroy planeswalker) target(planeswalker[manacost<=3]) destroy +target=*[creature;planeswalker;manacost<=3] +auto=destroy text=Destroy target creature or planeswalker with mana value 3 or less. mana={1}{B} type=Instant @@ -93190,8 +93189,8 @@ toughness=4 [card] name=Zurzoth, Chaos Rider auto=@drawfoeof(player) restriction{myturnonly} turnlimited:name(Create Devil) token(Devil,Creature Devil,1/1,red) and!( transforms((,newability[@movedto(this|mygraveyard):damage:1 target(*[player;creature;planeswalker])])) forever )! -auto=@combat(attacking) source(creature[devil]|myBattlefield) turnlimited:name(Draw and discard) draw:1 and!(discard:1 controller)! oneshot -auto=@combat(attacking) source(creature[devil]|myBattlefield) turnlimited:ability$!name(Draw and discard) name(Draw and discard) draw:1 and!(discard:1)!!$ opponent +auto=@combat(attacking) source(devil|myBattlefield) turnlimited:name(Draw and discard) draw:1 && discard:1 +auto=@combat(attacking) source(devil|myBattlefield) turnlimited:ability$!name(Draw and discard) name(Draw and discard) draw:1 && discard:1)!$ opponent text=Whenever an opponent draws their first card each turn, if it's not their turn, you create a 1/1 red Devil creature token with "When this creature dies, it deals 1 damage to any target." -- Whenever one or more Devils you control attack one or more players, you and those players each draw a card, then discard a card at random. mana={2}{R} type=Legendary Creature diff --git a/projects/mtg/bin/Res/sets/primitives/mtg.txt b/projects/mtg/bin/Res/sets/primitives/mtg.txt index 15b9eeb75..b7a08be69 100644 --- a/projects/mtg/bin/Res/sets/primitives/mtg.txt +++ b/projects/mtg/bin/Res/sets/primitives/mtg.txt @@ -1442,7 +1442,7 @@ auto={U}:_BLINK_UEOT_ auto={U}:unblockable auto={1}:1/-1 auto={1}:-1/1 -text={U}: Exile Aetherling. Return it to the battlefield under its owner’s control at the beginning of the next end step. -- {U}: Aetherling can't be blocked this turn. -- {1}: Aetherling gets +1/-1 until end of turn. -- {1}: Aetherling gets -1/+1 until end of turn. +text={U}: Exile Aetherling. Return it to the battlefield under its owner's control at the beginning of the next end step. -- {U}: Aetherling can't be blocked this turn. -- {1}: Aetherling gets +1/-1 until end of turn. -- {1}: Aetherling gets -1/+1 until end of turn. mana={4}{U}{U} type=Creature subtype=Shapeshifter @@ -22118,7 +22118,7 @@ type=Instant [card] name=Consuming Aberration anyzone=type:*:opponentgraveyard/type:*:opponentgraveyard cdaactive -auto=@movedTo(*|mystack):target(opponent) Reveal:1 revealzone(targetedpersonslibrary) revealuntil(land|targetedpersonslibrary) optionone choice name(Look) target(*|reveal) donothing optiononeend optiontwo choice name(put in Graveyard) all(*|reveal) moveto(graveyard) optiontwoend revealend +auto=@movedTo(*|mystack):Reveal:1 revealzone(opponentlibrary) revealuntil(land|opponentlibrary) optionone choice name(Look) target(*|reveal) donothing optiononeend optiontwo choice name(put in Graveyard) all(*|reveal) moveto(graveyard) optiontwoend revealend text=Consuming Aberration's power and toughness are each equal to the number of cards in your opponents' graveyards. -- Whenever you cast a spell, each opponent reveals cards from the top of his or her library until he or she reveals a land card, then puts those cards into his or her graveyard. mana={3}{U}{B} type=Creature @@ -51621,7 +51621,7 @@ toughness=2 [/card] [card] name=Gutter Grime -auto=@movedTo(creature[-token]|myGraveyard) from(myBattlefield):counter(0/0,1,Slime) +auto=@movedTo(creature[-token]|graveyard) from(myBattlefield):counter(0/0,1,Slime) auto=@counteradded(0/0,1,Slime) from(this):token(Ooze,Creature Ooze,type:enchantment{counter(0/0,1,Slime)}:mybattlefield/type:enchantment{counter(0/0,1,Slime)}:mybattlefield cdaactive,green) text=Whenever a notoken creature you control dies, put a slime counter on Gutter Grime, then create a green Ooze creature token with "This creature's power and toughness are each equal to the number of slime counters on Gutter Grime." mana={4}{G} @@ -78021,7 +78021,7 @@ type=Instant name=Mystifying Maze auto={t}:add{1} auto={4}{t}:target(creature[attacking]|opponentbattlefield) (blink)ueot return(tap) -text={T}: Add {C}. -- {4}, {T}: Exile target attacking creature an opponent controls. At the beginning of the next end step, return it to the battlefield tapped under its owner’s control. +text={T}: Add {C}. -- {4}, {T}: Exile target attacking creature an opponent controls. At the beginning of the next end step, return it to the battlefield tapped under its owner's control. type=Land [/card] [card] @@ -92011,27 +92011,27 @@ toughness=3 [/card] [card] name=Rashmi, Eternities Crafter -auto=@movedto(*[-land;manacost=1]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<1]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) target(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend -auto=@movedto(*[-land;manacost=2]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<2]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) target(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend -auto=@movedto(*[-land;manacost=3]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<3]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) target(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend -auto=@movedto(*[-land;manacost=4]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<4]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) target(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend -auto=@movedto(*[-land;manacost=5]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<5]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) target(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend -auto=@movedto(*[-land;manacost=6]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<6]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) target(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend -auto=@movedto(*[-land;manacost=7]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<7]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) target(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend -auto=@movedto(*[-land;manacost=8]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<8]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) target(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend -auto=@movedto(*[-land;manacost=9]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<9]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) target(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend -auto=@movedto(*[-land;manacost=10]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<10]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) target(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend -auto=@movedto(*[-land;manacost=11]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<11]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) target(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend -auto=@movedto(*[-land;manacost=12]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<12]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) target(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend -auto=@movedto(*[-land;manacost=13]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<13]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) target(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend -auto=@movedto(*[-land;manacost=14]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<14]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) target(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend -auto=@movedto(*[-land;manacost=15]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<15]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) target(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend -auto=@movedto(*[-land;manacost=16]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<16]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) target(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend -auto=@movedto(*[-land;manacost=17]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<17]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) target(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend -auto=@movedto(*[-land;manacost=18]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<18]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) target(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend -auto=@movedto(*[-land;manacost=19]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<19]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) target(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend -auto=@movedto(*[-land;manacost=20]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<20]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) target(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend -auto=@movedto(*[-land;manacost=21]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<21]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) target(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend +auto=@movedto(*[-land;manacost=1]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<1]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) all(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend +auto=@movedto(*[-land;manacost=2]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<2]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) all(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend +auto=@movedto(*[-land;manacost=3]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<3]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) all(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend +auto=@movedto(*[-land;manacost=4]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<4]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) all(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend +auto=@movedto(*[-land;manacost=5]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<5]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) all(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend +auto=@movedto(*[-land;manacost=6]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<6]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) all(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend +auto=@movedto(*[-land;manacost=7]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<7]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) all(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend +auto=@movedto(*[-land;manacost=8]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<8]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) all(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend +auto=@movedto(*[-land;manacost=9]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<9]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) all(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend +auto=@movedto(*[-land;manacost=10]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<10]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) all(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend +auto=@movedto(*[-land;manacost=11]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<11]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) all(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend +auto=@movedto(*[-land;manacost=12]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<12]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) all(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend +auto=@movedto(*[-land;manacost=13]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<13]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) all(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend +auto=@movedto(*[-land;manacost=14]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<14]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) all(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend +auto=@movedto(*[-land;manacost=15]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<15]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) all(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend +auto=@movedto(*[-land;manacost=16]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<16]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) all(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend +auto=@movedto(*[-land;manacost=17]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<17]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) all(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend +auto=@movedto(*[-land;manacost=18]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<18]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) all(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend +auto=@movedto(*[-land;manacost=19]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<19]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) all(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend +auto=@movedto(*[-land;manacost=20]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<20]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) all(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend +auto=@movedto(*[-land;manacost=21]|mystack) restriction{thisturn(*|mystack)~lessthan~1} turnlimited:reveal:1 revealzone(mylibrary) optionone name(choose card) target(*[-land;manacost<21]|reveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put in hand) all(*|reveal) moveto(ownerhand) optiontwoend afterrevealed all(tobecast|myexile) moveto(myexile) and!( activate castcard(normal) )! afterrevealedend revealend text=Whenever you cast your first spell each turn, reveal the top card of your library. If it's a nonland card with mana value less than that spell's, you may cast it without paying its mana cost. If you don't cast the revealed card, put it into your hand. mana={2}{G}{U} type=Legendary Creature @@ -120141,7 +120141,6 @@ name=Thirsting Axe auto={2}:equip auto=teach(creature) 4/0 auto=teach(creature) treason -auto=@combatdamaged(player) from(mytgt):all(trigger[from]) -treason ueot auto=@combatdamaged(creature) from(mytgt):all(trigger[from]) -treason ueot text=Equipped creature gets +4/+0. -- At the beginning of your end step, if equipped creature didn't deal combat damage to a creature this turn, sacrifice it. -- Equip {2} mana={3} diff --git a/projects/mtg/bin/Res/sets/primitives/planeswalkers.txt b/projects/mtg/bin/Res/sets/primitives/planeswalkers.txt index 1ee60506a..35696357c 100644 --- a/projects/mtg/bin/Res/sets/primitives/planeswalkers.txt +++ b/projects/mtg/bin/Res/sets/primitives/planeswalkers.txt @@ -2410,7 +2410,7 @@ subtype=Saheeli name=Saheeli, Sublime Artificer auto=counter(0/0,5,loyalty) auto=@movedTo(*[-creature]|mystack):token(Servo,Artifact Creature Servo,1/1) -auto={C(0/0,-2,Loyalty)}:name(-2: Create a copy of target artifact) target(artifact) transforms((,newability[copy target(*[artifact;creature]|mybattlefield)],newability[becomes(artifact)])) ueot oneshot +auto={C(0/0,-2,Loyalty)}:name(-2: Create a copy of target artifact) target(artifact) transforms((,newability[copy target(*[artifact;creature]|mybattlefield)],newability[becomes(artifact)])) ueot text=Whenever you cast a noncreature spell, create a 1/1 colorless Servo artifact creature token. -- -2: Target artifact you control becomes a copy of another target artifact or creature you control until end of turn, except it's an artifact in addition to its other types. mana={1}{UR}{UR} type=Legendary Planeswalker