diff --git a/projects/mtg/bin/Res/sets/primitives/_macros.txt b/projects/mtg/bin/Res/sets/primitives/_macros.txt index 569b63092..737480665 100644 --- a/projects/mtg/bin/Res/sets/primitives/_macros.txt +++ b/projects/mtg/bin/Res/sets/primitives/_macros.txt @@ -187,6 +187,9 @@ $AUTO_DEFINE _CLASH_ Put here a code if compare the casting cost based on Errati # Saproling Token #AUTO_DEFINE _SAPROLINGTOKEN_ create(Saproling:creature Saproling:1/1:green) +# Servo Token +#AUTO_DEFINE _SERVOTOKEN_ create(Servo:Artifact Creature Servo:1/1) + # Soldier Token #AUTO_DEFINE _SOLDIERTOKEN_ create(soldier:creature soldier:1/1:white) diff --git a/projects/mtg/bin/Res/sets/primitives/borderline.txt b/projects/mtg/bin/Res/sets/primitives/borderline.txt index ca22508d4..13f576ff6 100644 --- a/projects/mtg/bin/Res/sets/primitives/borderline.txt +++ b/projects/mtg/bin/Res/sets/primitives/borderline.txt @@ -8654,7 +8654,7 @@ type=Enchantment [card] name=Brawl-Bash Ogre abilities=menace -auto=_ATTACKING_may {S(other creature|mybattlefield)} 2/2 ueot +auto=_ATTACKING_may name(sacrifice) transforms((,newability[sacrifice notatarget(other creature|myBattlefield)],newability[2/2])) ueot text=Menace (This creature can't be blocked except by two or more creatures.) -- Whenever Brawl-Bash Ogre attacks, you may sacrifice another creature. If you do, Brawl-Bash Ogre gets +2/+2 until end of turn. mana={2}{B}{R} type=Creature @@ -10371,7 +10371,7 @@ toughness=1 name=Cartographer's Survey abilities=flying aicode=activate target(*[zpos=1]|mylibrary) transforms((,newability[if type(land[zpos<=7]|mylibrary)~equalto~0 then all(*[zpos<=7]|mylibrary) moveto(myreveal) and!( bottomoflibrary )!],newability[if type(land[zpos<=6]|mylibrary)~morethan~0 then target(land[zpos<=6]|mylibrary) moveto(mybattlefield) and!( transforms((,newability[tap(noevent)],newability[all(*[zpos<=6]|mylibrary) moveto(myreveal) and!( bottomoflibrary )!])) oneshot )! ])) oneshot -auto=name(Look top 7 cards) reveal:7 optionone name(Put in hand) target(land|reveal) moveto(mybattlefield) and!( tap(noevent) )! optiononeend optiontwo name(Put on bottom) target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend +auto=name(Look top 7 cards) reveal:7 optionone name(Put onto the battlefield) target(land|reveal) moveto(mybattlefield) and!( tap(noevent) )! optiononeend optiontwo name(Put on bottom) target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend text=Look at the top seven cards of your library. Put up to two land cards from among them onto the battlefield tapped. Put the rest on the bottom of your library in a random order. mana={3}{G} type=Sorcery @@ -20039,7 +20039,7 @@ toughness=2 [/card] [card] name=Drannith Magistrate -auto=maxCast(*|opponentbattlefield,opponentstack,opponentgraveyard,opponentlibrary,opponentexile)0 opponent +auto=maxCast(*|opponentgraveyard,opponentlibrary,opponentexile)0 opponent text=Your opponents can't cast spells from anywhere other than their hands. mana={1}{W} type=Creature @@ -23395,7 +23395,7 @@ toughness=4 [/card] [card] name=Excavating Anurid -auto=may name(sacrifice land) S(land):draw:1 +auto=may name(sacrifice land) notatarget(land|mybattlefield) sacrifice && draw:1 auto=aslongas(*|mygraveyard) 1/1 >6 auto=aslongas(*|mygraveyard) vigilance >6 text=When Excavating Anurid enters the battlefield, you may sacrifice a land. If you do, draw a card. -- Threshold - As long as seven or more cards are in your graveyard, Excavating Anurid gets +1/+1 and has vigilance. @@ -24058,7 +24058,8 @@ toughness=0 [card] name=Faerie Artisans abilities=flying -auto=@movedto(creature[-token]|opponentBattlefield):name(Copy creature) all(trigger[to]) clone addtype(artifact) and!( transform((,newability[counter(0/0.1.ArtisanCreated)],newability[name(Exile other tokens) all(other creature[counter{0/0.1.ArtisanCreated}]|myBattlefield) moveTo(exile)])) oneshot )! +auto=@movedto(creature[-token]|opponentBattlefield):name(Copy creature) all(trigger[to]) clone addtype(artifact) and!( transform((,newability[counter(0/0.1.ArtisanCreated)])) oneshot )! +auto=@movedto(creature[-token]|opponentBattlefield):name(Exile other tokens) all(creature[counter(0/0.1.ArtisanCreated)]|myBattlefield) moveTo(exile) text=Flying -- Whenever a nontoken creature enters the battlefield under an opponent's control, create a token that's a copy of that creature except it's an artifact in addition to its other types. Then exile all other tokens created with Faerie Artisans. mana={3}{U} type=Creature @@ -24941,7 +24942,7 @@ toughness=3 [card] name=Fell Stinger abilities=deathtouch -auto=may name(Exploit a creature) target(creature|mybattlefield) exploits and!( transforms((,newability[name(Player draws 2 cards) target(player) ability$!draw:2 controller && life:-2 controller!$ targetedplayer])) oneshot )! +auto=may name(Exploit a creature) notatarget(creature|mybattlefield) exploits and!( transforms((,newability[name(Player draws 2 cards) target(player) ability$!draw:2 controller && life:-2 controller!$ targetedplayer])) oneshot )! text=Deathtouch -- Exploit (When this creature enters the battlefield, you may sacrifice a creature.) -- When Fell Stinger exploits a creature, target player draws two cards and loses 2 life. mana={2}{B} type=Creature @@ -26224,7 +26225,7 @@ type=Instant name=Flames of the Raze-Boar target=creature|opponentBattlefield auto=damage:4 -auto=if type(creature[power>3]|mybattlefield)~morethan~0 then damage:2 all(creature|opponentBattlefield) +auto=if type(creature[power>=4]|mybattlefield)~morethan~0 then damage:2 all(creature|opponentBattlefield) text=Flames of the Raze-Boar deals 4 damage to target creature an opponent controls. Then Flames of the Raze-Boar deals 2 damage to each other creature that player controls if you control a creature with power 4 or greater. mana={5}{R} type=Instant @@ -28143,7 +28144,7 @@ toughness=5 [card] name=Gate Colossus anyzone=foreach(land[Gate]|myBattlefield) changecost(colorless:-1) forcedalive -auto=cantbeblockedby(creature[power>=2]) +auto=cantbeblockedby(creature[power<=2]) autograveyard=@movedTo(land[Gate]|myBattlefield):may moveTo(myLibray) text=This spell costs {1} less to cast for each Gate you control. -- Gate Colossus can't be blocked by creatures with power 2 or less. -- Whenever a Gate enters the battlefield under your control, you may put Gate Colossus from your graveyard on top of your library. mana={8} @@ -28695,7 +28696,7 @@ type=Sorcery [card] name=Ghired, Conclave Exile auto=token(Rhino,Creature Rhino,4/4,green,trample) -auto=@combat(attacking) restriction{type(creature[token]|mybattlefield)~morethan~0}:ability$! _POPULATE_ ninjutsu !$ controller +auto=_ATTACKING_clone with(battleready) notAtarget(creature[token]|myBattlefield) text=When Ghired, Conclave Exile enters the battlefield, create a 4/4 green Rhino creature token with trample. -- Whenever Ghired attacks, populate. The token enters the battlefield tapped and attacking. (To populate, create a token that's a copy of a creature token you control.) mana={2}{R}{G}{W} type=Legendary Creature @@ -31396,8 +31397,8 @@ toughness=4 [card] name=Greven, Predator Captain abilities=menace -auto=life:lifelost/0 -auto=_ATTACKING_may {S(other creature|mybattlefield)} life:-storedtoughness && draw:storedpower +anyzone=@lifelostof(player):lifelost/0 ueot +auto=_ATTACKING_may name(sacrifice) notatarget(other creature|myBattlefield) transforms((,newability[dynamicability],newability[dynamicability],newability[sacrifice])) text=Menace -- Greven, Predator Captain gets +X/+0, where X is the amount of life you've lost this turn. -- Whenever Greven attacks, you may sacrifice another creature. If you do, you draw cards equal to that creature's power and you lose life equal to that creature's toughness. mana={3}{B}{R} type=Legendary Creature @@ -32889,6 +32890,7 @@ name=Harmonic Prodigy #MISSING: not possible to trigger twice any ability ATM abilities=prowess auto=@movedTo(*[-creature]|mystack):1/1 ueot +auto=@movedTo(*[-creature]|mystack):1/1 ueot text=Prowess (Whenever you cast a noncreature spell, this creature gets +1/+1 until end of turn.) -- If an ability of a Shaman or another Wizard you control triggers, that ability triggers an additional time. mana={1}{R} type=Creature @@ -33799,7 +33801,7 @@ toughness=2 [card] name=Herald of the Forgotten abilities=flying -auto=if casted(this) then moveTo(myBattlefield) target(artifact,enchantment,land,creature[__cycling__]|myGraveyard) +auto=if casted(this) then moveTo(myBattlefield) target(*[cycling]|myGraveyard) text=Flying -- When Herald of the Forgotten enters the battlefield, if you cast it, return any number of target permanent cards with cycling abilities from your graveyard to the battlefield. mana={6}{W}{W} type=Creature @@ -45148,8 +45150,8 @@ subtype=Equipment [/card] [card] name=Mask of Immolation -auto=livingweapon_REDELEMENTALTOKEN_ auto={2}:equip +auto=livingweapontoken(Elemental,Creature Elemental,1/1,red) auto=teach(creature) {S}:damage:1 target(player,creature,planeswalker) text=When Mask of Immolation enters the battlefield, create a 1/1 red Elemental creature token, then attach Mask of Immolation to it. -- Equipped creature has "Sacrifice this creature: It deals 1 damage to any target." -- Equip {2} ({2} : Attach to target creature you control. Equip only as a sorcery.) mana={1}{R} @@ -46185,8 +46187,8 @@ subtype=Treasure [/card] [card] name=Mimic Vat -auto=@movedto(creature[-token]|nonbattlezone) from(battlefield):may name(Imprint card) name(Imprint card) all(trigger[to]) transforms((,newability[moveTo(ownerGraveyard) all(other creature[counter{0/0.1.MimicImprinted}]|exile)],newability[moveto(exile) and!( counter(0/0.1.MimicImprinted) )!])) forever -auto={3}{T}:target(creature[counter{0/0.1.MimicImprinted}]|exile) clone with(haste,unearth) +auto=@movedto(creature[-token]|graveyard) from(battlefield):may name(Imprint card) name(Imprint card) all(trigger[to]) transforms((,newability[moveTo(ownerGraveyard) all(other creature[counter{0/0.1.MimicImprinted}]|exile)],newability[moveto(exile) and!( counter{0/0.1.MimicImprinted} )!])) forever +auto={3}{T}:target(creature|exile) clone with(haste,unearth) text=Imprint - Whenever a nontoken creature dies, you may exile that card. If you do, return each other card exiled with Mimic Vat to its owner's graveyard. -- {3}, {T}: Create a token that's a copy of a card exiled with Mimic Vat. It gains haste. Exile it at the beginning of the next end step. mana={3} type=Artifact @@ -47502,12 +47504,11 @@ toughness=0 [card] name=Multiple Choice aicode=activate transforms((,newability[all(*[zpos<=1]|mylibrary) transforms((,newability[may name(Put on bottom of library) moveto(myreveal) and!( bottomoflibrary )!])) oneshot])) oneshot -auto=this(X=1) name(Scry 1) scry:1 scrycore delayed dontshow donothing scrycoreend scryend +auto=this(X=1) name(Scry 1) scry:1 scrycore delayed dontshow draw:1 controller scrycoreend scryend auto=this(X=2) target(player) ability$!name(Return creature to hand) name(Return creature to hand) target(creature|mybattlefield) moveto(ownerhand)!$ targetedplayer auto=this(X=3) token(Elemental,Creature Elemental,4/4,blue,red) -auto=this(X>=4) name(Scry 1) scry:1 scrycore delayed dontshow donothing scrycoreend scryend auto=this(X>=4) target(player) ability$!name(Return creature to hand) name(Return creature to hand) target(creature|mybattlefield) moveto(ownerhand)!$ targetedplayer -auto=this(X>=4) token(Elemental,Creature Elemental,4/4,blue,red) +auto=this(X>=4) token(Elemental,Creature Elemental,4/4,blue,red) && draw:1 controller text=If X is 1, scry 1, then draw a card. -- If X is 2, you may choose a player. They return a creature they control to its owner's hand. -- If X is 3, create a 4/4 blue and red Elemental creature token. -- If X is 4 or more, do all of the above. mana={X}{U} type=Sorcery @@ -47814,11 +47815,11 @@ type=Artifact [card] name=Mystic Monstrosity backside=Mystic Skull -auto=lord(land|myBattlefield) {T}:add{G} -auto=lord(land|myBattlefield) {T}:add{R} +auto=lord(land|myBattlefield) {T}:add{W} auto=lord(land|myBattlefield) {T}:add{U} auto=lord(land|myBattlefield) {T}:add{B} -auto=lord(land|myBattlefield) {T}:add{W} +auto=lord(land|myBattlefield) {T}:add{R} +auto=lord(land|myBattlefield) {T}:add{G} text=Lands you control have "{T}: Add one mana of any color." // Mystic Skull type=Artifact Creature subtype=Construct @@ -50956,7 +50957,7 @@ auto={1}:all(this) transforms((Legendary Artifact Creature Construct,setpower=6, text={1}: Turn target permanent you control to its other face. / {1}: Until end of turn, Optimus Prime, Inspiring Leader becomes a Construct with base power and toughness 6/6 and creatures you control gain trample. mana={3}{R}{W} type=Legendary Artifact Creature -subtype=Bot Mode +subtype=Autobot power=4 toughness=5 [/card] @@ -58357,7 +58358,7 @@ toughness=2 [card] name=Retrofitter Foundry auto={3}:untap -auto={2}{T}:create(servo:artifact creature servo:1/1) +auto={2}{T}:_SERVOTOKEN_ auto={1}{T}{S(Servo|myBattlefield)}:create(thopter:artifact creature thopter:1/1:flying) auto={T}{S(Thopter|myBattlefield)}:create(construct:artifact creature construct:4/4) text={3}: Untap Retrofitter Foundry. -- {2}, {T}: Create a 1/1 colorless Servo artifact creature token. -- {1}, {T}, Sacrifice a Servo: Create a 1/1 colorless Thopter artifact creature token with flying. -- {T}, Sacrifice a Thopter: Create a 4/4 colorless Construct artifact creature token. @@ -59291,11 +59292,11 @@ type=Instant [/card] [card] name=Rite of Belzenlok -auto=counter(0/0,1,Lore) +auto=counter(0/0,3,Lore) auto=@each my firstmain:counter(0/0,1,Lore) auto=create(cleric:creature cleric:0/1:black:)*2 auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.2.Lore}=) create(cleric:creature cleric:0/1:black:)*2 -auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.3.Lore}) create(demon:creature demon:6/6:black:flying:trample) and!( transforms((,newability[bury notatarget(other creature|myBattlefield)])))! +auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.3.Lore}) create(demon:creature demon:6/6:black:flying:trample) and!( transforms((,newability[@each my upkeep restriction{type(creature|myBattlefield)~morethan~1}:sacrifice notatarget(other creature|mybattlefield)],newability[@each my upkeep restriction{type(creature|myBattlefield)~lessthan~2}:damage:6 controller])) forever )! auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.3.Lore}) sacrifice(this) text=(As this Saga enters and after your draw step, add a lore counter. Sacrifice after III.) -- I, II - Create two 0/1 black Cleric creature tokens. -- III - Create a 6/6 black Demon creature token with flying, trample, and "At the beginning of your upkeep, sacrifice another creature. If you can't, this creature deals 6 damage to you." mana={2}{B}{B} @@ -64049,10 +64050,11 @@ toughness=4 [/card] [card] name=Shatter Assumptions -aicode=activate choice reject all(*[-land][-white][-blue][-green][-black][-red]|targetedpersonshand) +target=opponent +aicode=activate choice reject all(*[-land;cololess]|targetedpersonshand) aicode=activate choice reject all(*[multicolor]|targetedpersonshand) -auto=choice reveal:type:*:targetedpersonshand revealzone(targetedpersonshand) optionone name(choose discards) target(*|reveal) transforms((,newability[moveto(ownerhand) and!( reject )! all(*[-land][-white][-blue][-green][-black][-red]|reveal)])) optiononeend optiontwo name(put back) target(<1>*|reveal) moveto(ownerhand) and!( all(*|reveal) moveto(ownerhand) )! optiontwoend revealend -auto=choice reveal:type:*:targetedpersonshand revealzone(targetedpersonshand) optionone name(choose discards) target(*|reveal) transforms((,newability[moveto(ownerhand) and!( reject )! all(*[multicolor]|reveal)])) optiononeend optiontwo name(put back) target(<1>*|reveal) moveto(ownerhand) and!( all(*|reveal) moveto(ownerhand) )! optiontwoend revealend +auto=choice name(discard colorless) reveal:type:*:targetedpersonshand revealzone(targetedpersonshand) optionone name(look at the cards) target(*|reveal) transforms((,newability[moveto(ownerhand) and!( reject )! all(*[-land;colorless]|reveal)])) optiononeend optiontwo name(put back) target(<1>*|reveal) moveto(ownerhand) and!( all(*|reveal) moveto(ownerhand) )! optiontwoend revealend +auto=choice name(discard multicolor) reveal:type:*:targetedpersonshand revealzone(targetedpersonshand) optionone name(look at the cards) target(*|reveal) transforms((,newability[moveto(ownerhand) and!( reject )! all(*[multicolor]|reveal)])) optiononeend optiontwo name(put back) target(<1>*|reveal) moveto(ownerhand) and!( all(*|reveal) moveto(ownerhand) )! optiontwoend revealend text=Choose one -- Target opponent reveals their hand and discards all colorless nonland cards. -- Target opponent reveals their hand and discards all multicolored cards. mana={1}{B}{B} type=Sorcery @@ -68050,7 +68052,7 @@ toughness=6 [card] name=Speaker of the Heavens abilities=vigilance,lifelink -auto={T}:token(_ANGELTOKEN_) restriction{compare(lifetotalminusstartinglifeminusend)~morethan~6} asSorcery +auto={T}:_ANGELTOKEN_ restriction{compare(lifetotalminusstartinglifeminusend)~morethan~6} asSorcery text=Vigilance, lifelink -- {T}: Create a 4/4 white Angel creature token with flying. Activate this ability only if you have at least 7 life more than your starting life total and only any time you could cast a sorcery. mana={W} type=Creature @@ -71380,7 +71382,7 @@ type=Instant [card] name=Superior Numbers target=creature -auto=damage:type:creature:mybattlefieldminustype:creature:opponentbattlefieldbattlefieldminusend +auto=damage:type:creature:mybattlefieldminustype:creature:opponentbattlefieldminusend text=Superior Numbers deals damage to target creature equal to the number of creatures you control in excess of the number of creatures target opponent controls. mana={G}{G} type=Sorcery @@ -71539,7 +71541,7 @@ toughness=8 [/card] [card] name=Surtland Flinger -auto=_ATTACKING_may name(Sacrifice creature) target(other creature|mybattlefield) sacrifice && transforms((,newability[if cantargetcard(giant|*) then damage:twicepower target(player^creature^planeswalker) else damage:power target(player^creature^planeswalker)])) oneshot +auto=_ATTACKING_may name(Sacrifice creature) notatarget(other creature|mybattlefield) sacrifice && transforms((,newability[if cantargetcard(giant|*) then damage:twicepower target(player^creature^planeswalker) else damage:power target(player^creature^planeswalker)])) oneshot text=Whenever Surtland Flinger attacks, you may sacrifice another creature. When you do, Surtland Flinger deals damage equal to the sacrificed creature's power to any target. If the sacrificed creature was a Giant, Surtland Flinger deals twice that much damage instead. mana={3}{R}{R} type=Creature @@ -72260,8 +72262,8 @@ toughness=2 [/card] [card] name=Tactical Advantage -target=creature[blocking;blocked]|myBattlefield -auto=2/2 ueot +auto=name(Target blocking creature) target(creature[blocking]|myBattlefield) 2/2 +auto=name(Target blocked creature) target(creature[blocked]|myBattlefield) 2/2 text=Target blocking or blocked creature you control gets +2/+2 until end of turn. mana={W} type=Instant @@ -73439,7 +73441,7 @@ toughness=1 [card] name=Terror of Mount Velus abilities=flying,double strike -auto=lord(creatures|myBattlefield) double strike ueot oneshot +auto=all(creatures|myBattlefield) double strike text=Flying, double strike -- When Terror of Mount Velus enters the battlefield, creatures you control gain double strike until end of turn. mana={5}{R}{R} type=Creature @@ -73753,10 +73755,10 @@ subtype=Saga [card] name=The Birth of Meletis aicode=activate target(Plains[basic]|mylibrary) moveto(myhand) -auto=name(search card) Reveal:type:*:mylibrary revealzone(mylibrary) optionone name(choose card) target(<1>land[basic;plains]|reveal) transforms((,newability[all(other *|reveal) moveto(mylibrary) and!(shuffle)!],newability[moveto(myhand)])) optiononeend optiontwo name(shuffle) bottomoflibrary target(<1>*|reveal) and!( all(*|reveal) bottomoflibrary and!(shuffle)! )! optiontwoend revealend +auto=name(search card) Reveal:type:*:mylibrary revealzone(mylibrary) optionone name(choose card) target(Plains[basic]|reveal) transforms((,newability[all(other *|reveal) moveto(mylibrary) and!(shuffle)!],newability[moveto(myhand)])) optiononeend optiontwo name(shuffle) bottomoflibrary target(<1>*|reveal) and!( all(*|reveal) bottomoflibrary and!(shuffle)! )! optiontwoend revealend auto=counter(0/0,1,Lore) auto=@each my firstmain:counter(0/0,1,Lore) -auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.2.Lore}) token(Wall,Bir) +auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.2.Lore}=) create(Wall:artifact creature Wall:0/4:defender) auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.3.Lore}) life:2 controller && sacrifice(this) text=(As this Saga enters and after your draw step, add a lore counter. Sacrifice after III.) -- I - Search your library for a basic Plains card, reveal it, put it into your hand, then shuffle your library. -- II - Create a 0/4 colorless Wall artifact creature token with defender. -- III - You gain 2 life. mana={1}{W} @@ -74992,7 +74994,7 @@ toughness=2 [/card] [card] name=Thunderstaff -auto=@sourcenottap:each blockers:absorb:type:creature[attacking]:opponentbattlefield controller +auto=@each blockers sourcenottap:absorb:type:creature[attacking]:opponentbattlefield controller auto={2}{T}:lord(creature[attacking]) 1/0 text=As long as Thunderstaff is untapped, if a creature would deal combate to you, prevent 1 of that damage. -- {2},{T}: Attacking creatures get +1/+0 until end of turn. mana={3} @@ -78991,7 +78993,7 @@ toughness=1 [/card] [card] name=Vedalken Humiliator -auto=_ATTACKING_restriction{aslongas(artifact|mybattlefield) lord(creature|opponentBattlefield) loseabilities && lord(creature|opponentBattlefield) transforms((,setpower=1,settoughness=1))) >2 ueot} +auto=_ATTACKING_aslongas(artifact|mybattlefield) lord(creature|opponentBattlefield) loseabilities && lord(creature|opponentBattlefield) transforms((,setpower=1,settoughness=1))) ueot >2 text=Metalcraft - Whenever Vedalken Humiliator attacks, if you control three or more artifacts, creatures your opponents control lose all abilities and have base power and toughness 1/1 until end of turn. mana={3}{U} type=Creature @@ -79335,7 +79337,7 @@ toughness=2 [/card] [card] name=Verazol, the Split Current -auto=counter(1/1,2) +auto=if casted(this) then counter(1/1,2) auto=counter(1/1,X) all(this) auto=@movedTo(*[kicked=1]|myStack):may name(copy spell) all(trigger[to]) castcard(copied noevent kicked!:1:!) && counter(1/1,-2) all(this) auto=@movedTo(*[kicked=2]|myStack):may name(copy spell) all(trigger[to]) castcard(copied noevent kicked!:2:!) && counter(1/1,-2) all(this) diff --git a/projects/mtg/bin/Res/sets/primitives/mtg.txt b/projects/mtg/bin/Res/sets/primitives/mtg.txt index 26ea4fa85..ddc5a6d68 100644 --- a/projects/mtg/bin/Res/sets/primitives/mtg.txt +++ b/projects/mtg/bin/Res/sets/primitives/mtg.txt @@ -1200,7 +1200,7 @@ type=Enchantment name=Aether Chaser abilities=first strike auto=alterenergy:2 controller -auto=_ATTACKING_pay({e:2}) create(Servo:Artifact Creature Servo:1/1) +auto=_ATTACKING_pay({e:2}) _SERVOTOKEN_ text=First strike -- When Aether Chaser enters the battlefield, you get {E}{E} (two energy counters). -- Whenever Aether Chaser attacks, you may pay {E}{E}. If you do, create a 1/1 colorless Servo artifact creature token. mana={1}{R} type=Creature @@ -1238,7 +1238,7 @@ type=Sorcery [card] name=Aether Herder auto=alterenergy:2 controller -auto=_ATTACKING_pay({e:2}) create(Servo:Artifact Creature Servo:1/1) +auto=_ATTACKING_pay({e:2}) _SERVOTOKEN_ text=When Aether Herder enters the battlefield, you get {E}{E} (two energy counters). -- Whenever Aether Herder attacks, you may pay {E}{E}. If you do, create a 1/1 colorless Servo artifact creature token. mana={3}{G} type=Creature @@ -1262,7 +1262,7 @@ type=Land name=Aether Inspector abilities=vigilance auto=alterenergy:2 controller -auto=_ATTACKING_pay({e:2}) create(Servo:Artifact Creature Servo:1/1) +auto=_ATTACKING_pay({e:2}) _SERVOTOKEN_ text=Vigilance -- When Aether Inspector enters the battlefield, you get {E}{E} (two energy counters). -- Whenever Aether Inspector attacks, you may pay {E}{E}. If you do, create a 1/1 colorless Servo artifact creature token. mana={3}{W} type=Creature @@ -1305,7 +1305,7 @@ type=Sorcery name=Aether Poisoner abilities=deathtouch auto=alterenergy:2 controller -auto=_ATTACKING_pay({e:2}) create(Servo:Artifact Creature Servo:1/1) +auto=_ATTACKING_pay({e:2}) _SERVOTOKEN_ text=Deathtouch (Any amount of damage this deals to a creature is enough to destroy it.) -- When Aether Poisoner enters the battlefield, you get {E}{E} (two energy counters). -- Whenever Aether Poisoner attacks, you may pay {E}{E}. If you do, create a 1/1 colorless Servo artifact creature token. mana={1}{B} type=Creature @@ -1348,7 +1348,7 @@ type=Enchantment name=Aether Swooper abilities=flying auto=alterenergy:2 controller -auto=_ATTACKING_pay({e:2}) create(Servo:Artifact Creature Servo:1/1) +auto=_ATTACKING_pay({e:2}) _SERVOTOKEN_ text=Flying -- When Aether Swooper enters the battlefield, you get {E}{E} (two energy counters). -- Whenever Aether Swooper attacks, you may pay {E}{E}. If you do, create a 1/1 colorless Servo artifact creature token. mana={1}{U} type=Creature @@ -21301,8 +21301,8 @@ toughness=3 [/card] [card] name=Cogworker's Puzzleknot -auto=create(Servo:Artifact Creature Servo:1/1) -auto={1}{W}{S}:create(Servo:Artifact Creature Servo:1/1) +auto=_SERVOTOKEN_ +auto={1}{W}{S}:_SERVOTOKEN_ text=When Cogworker's Puzzleknot enters the battlefield, create a 1/1 colorless Servo artifact creature token. -- {1}{W}, Sacrifice Cogworker's Puzzleknot: Create a 1/1 colorless Servo artifact creature token. mana={2} type=Artifact @@ -22996,7 +22996,7 @@ type=Instant [/card] [card] name=Countless Gears Renegade -auto=if revolt then create(Servo:Artifact Creature Servo:1/1) +auto=if revolt then _SERVOTOKEN_ text=Revolt -- When Countless Gears Renegade enters the battlefield, if a permanent you controlled left the battlefield this turn, create a 1/1 colorless Servo artifact creature token. mana={1}{W} type=Creature @@ -24380,8 +24380,8 @@ subtype=Arcane [/card] [card] name=Crushing Vines -target=*[artifact;creature&flying] -auto=destroy +auto=choice destroy target(creature[flying]) restriction{type(creature[flying])~morethan~0} +auto=choice destroy target(artifact) restriction{type(artifact)~morethan~0} text=Choose one - Destroy target creature with flying, or destroy target artifact. mana={2}{G} type=Instant @@ -54501,7 +54501,7 @@ type=Enchantment [card] name=Hidden Stockpile aicode=activate transforms((,newability[all(*[zpos<=1]|mylibrary) transforms((,newability[may name(Put on bottom of library) moveto(myreveal) and!( bottomoflibrary )!])) oneshot])) oneshot -auto=@each my end restriction{revolt}:create(Servo:Artifact Creature Servo:1/1) +auto=@each my end restriction{revolt}:_SERVOTOKEN_ auto={1}{S(creature|mybattlefield)}:scry:1 scrycore delayed dontshow donothing scrycoreend scryend text=Revolt -- At the beginning of your end step, if a permanent you controlled left the battlefield this turn, create a 1/1 colorless Servo artifact creature token. -- {1}, Sacrifice a creature: Scry 1. mana={W}{B} @@ -61777,7 +61777,7 @@ type=Instant [card] name=Karona, False God abilities=haste -auto=@each upkeep:moveTo(opponentbattlefield) +auto=@each upkeep:untap && moveTo(opponentbattlefield) auto=_ATTACKING_chooseatype all(creature[chosentype]) 3/3 ueot chooseend text=Haste -- At the beginning of each player's upkeep, that player untaps Karona, False God and gains control of it. -- Whenever Karona attacks, creatures of the creature type of your choice get +3/+3 until end of turn. mana={1}{W}{U}{B}{R}{G} @@ -71972,7 +71972,7 @@ toughness=2 [card] name=Master Trinketeer auto=lord(*[servo;thopter]|mybattlefield) 1/1 -auto={3}{W}:create(Servo:Artifact Creature Servo:1/1) +auto={3}{W}:_SERVOTOKEN_ text=Servos and Thopters you control get +1/+1. -- {3}{W}: Create a 1/1 colorless Servo artifact creature token. mana={2}{W} type=Creature @@ -83809,7 +83809,7 @@ toughness=1 [/card] [card] name=Oviya Pashiri, Sage Lifecrafter -auto={2}{G}{T}:create(Servo:Artifact Creature Servo:1/1) +auto={2}{G}{T}:_SERVOTOKEN_ auto={4}{G}{T}:token(Construct,Artifact Creature Construct,type:creature:mybattlefield/type:creature:mybattlefield) text={2}{G}, {T}: Create a 1/1 colorless Servo artifact creature token. -- {4}{G}, {T}: Create an X/X colorless Construct artifact creature token, where X is the number of creatures you control. mana={G} @@ -89963,7 +89963,7 @@ toughness=3 [/card] [card] name=Purraj of Urborg -auto=_ATTACKING_first strike ueot +auto=this(attacking) first strike auto=@movedto(*[black]|stack):pay({B}) counter(1/1) text=Purraj of Urborg has first strike as long as it's attacking. -- Whenever a player casts a black spell, you may pay {B}. If you do, put a +1/+1 counter on Purraj of Urborg. mana={3}{B}{B} @@ -90406,7 +90406,7 @@ toughness=5 [card] name=Quarantine Field auto=counter(0/0,xx,Isolation) -auto=this(variable{halfpaid}>0) (blink)forsrc target(*[-land]|opponentbattlefield) +auto=this(variable{halfpaid}>0) (blink)forsrc target(*[-land]|opponentbattlefield) text=Quarantine Field enters the battlefield with X isolation counters on it. -- When Quarantine Field enters the battlefield, for each isolation counter on it, exile up to one target nonland permanent an opponent controls until Quarantine Field leaves the battlefield. mana={X}{X}{W}{W} type=Enchantment @@ -94051,7 +94051,7 @@ toughness=2 name=Renegade's Getaway target=* auto=indestructible ueot -auto=create(Servo:Artifact Creature Servo:1/1) +auto=_SERVOTOKEN_ text=Target permanent gains indestructible until end of turn. Create a 1/1 colorless Servo artifact creature token. (Effects that say "destroy" don't destroy a permanent with indestructible, and if it's a creature, it can't be destroyed by damage.) mana={2}{B} type=Instant @@ -102960,15 +102960,15 @@ toughness=3 [/card] [card] name=Servo Exhibition -auto=create(Servo:Artifact Creature Servo:1/1)*2 +auto=_SERVOTOKEN_*2 text=Create two 1/1 colorless Servo artifact creature tokens. mana={1}{W} type=Sorcery [/card] [card] name=Servo Schematic -auto=create(Servo:Artifact Creature Servo:1/1) -auto=_DIES_create(Servo:Artifact Creature Servo:1/1) +auto=_SERVOTOKEN_ +auto=_DIES__SERVOTOKEN_ text=When Servo Schematic enters the battlefield or is put into a graveyard from the battlefield, create a 1/1 colorless Servo artifact creature token. mana={2} type=Artifact @@ -108357,7 +108357,7 @@ type=Artifact [card] name=Sly Requisitioner other={improvise} name(Improvise) -auto=@movedto(graveyard) from(artifact[-token]|myBattlefield):create(Servo:Artifact Creature Servo:1/1) +auto=@movedto(graveyard) from(artifact[-token]|myBattlefield):_SERVOTOKEN_ text=Improvise (Your artifacts can help cast this spell. Each artifact you tap after you're done activating mana abilities pays for {1}.) -- Whenever a nontoken artifact you control is put into a graveyard from the battlefield, create a 1/1 colorless Servo artifact creature token. mana={4}{B} type=Creature @@ -110828,7 +110828,7 @@ type=Artifact name=Sphinx of Jwar Isle abilities=flying,opponentshroud alias=185709 -auto={0}:name(Look) reveal:1 optionone name(look) target(<1>*|reveal) moveto(mylibrary) optiononeend optiontwo name(put it back) all(*|reveal) moveto(mylibrary) optiontwoend revealend +auto={0}:name(Look) reveal:1 optionone name(look) target(<1>*|reveal) moveto(mylibrary) optiononeend optiontwo name(put it back) all(*|reveal) moveto(mylibrary) optiontwoend revealend limit:5 text=Flying, shroud -- You may look at the top card of your library. (You may do this at any time.) mana={4}{U}{U} type=Creature @@ -112459,7 +112459,7 @@ toughness=2 [/card] [card] name=Sram's Expertise -auto=create(Servo:Artifact Creature Servo:1/1)*3 +auto=_SERVOTOKEN_*3 auto=may castcard(normal) notatarget(*[-land;manacost<=3]|myhand) text=Create three 1/1 colorless Servo artifact creature tokens. -- You may cast a card with mana value 3 or less from your hand without paying its mana cost. mana={2}{W}{W} diff --git a/projects/mtg/bin/Res/sets/primitives/planeswalkers.txt b/projects/mtg/bin/Res/sets/primitives/planeswalkers.txt index 3df868a0d..7650811c5 100644 --- a/projects/mtg/bin/Res/sets/primitives/planeswalkers.txt +++ b/projects/mtg/bin/Res/sets/primitives/planeswalkers.txt @@ -1728,6 +1728,7 @@ subtype=Liliana name=Liliana, Death Wielder auto=counter(0/0,5,loyalty) auto={C(0/0,2,Loyalty)}:name(+2: Put a -1/-1 counter) counter(-1/-1) target(creature) +auto={C(0/0,2,Loyalty)}:name(+2: No target) doNothing auto={C(0/0,-3,Loyalty)}:name(-3: Destroy target creature with a -1/-1 counter) destroy target(creature[counter{-1/-1}]) auto={C(0/0,-10,Loyalty)}:name(-10: Return all creature from your graveyard) moveTo(mybattlefield) all(creature|mygraveyard) text=+2: Put a -1/-1 counter on up to one target creature. -- -3: Destroy target creature with a -1/-1 counter on it. -- -10: Return all creature cards from your graveyard to the battlefield.