diff --git a/projects/mtg/bin/Res/sets/primitives/_macros.txt b/projects/mtg/bin/Res/sets/primitives/_macros.txt index 1620cb854..bc4210916 100644 --- a/projects/mtg/bin/Res/sets/primitives/_macros.txt +++ b/projects/mtg/bin/Res/sets/primitives/_macros.txt @@ -287,6 +287,9 @@ # Phyrexian Mite Token #AUTO_DEFINE _PHYREXIANMITETOKEN_ create(phyrexian mite:artifact creature phyrexian mite:1/1:poisontoxic:cantblock) +# White Rabbit Token +#AUTO_DEFINE _RABBITTOKEN_ create(rabbit:creature rabbit:1/1:white) + # Red Elemental Token #AUTO_DEFINE _REDELEMENTALTOKEN_ create(Elemental:Creature Elemental:1/1:red) diff --git a/projects/mtg/bin/Res/sets/primitives/borderline.txt b/projects/mtg/bin/Res/sets/primitives/borderline.txt index f63c31d3d..c07a88b81 100644 --- a/projects/mtg/bin/Res/sets/primitives/borderline.txt +++ b/projects/mtg/bin/Res/sets/primitives/borderline.txt @@ -1075,7 +1075,7 @@ type=Sorcery name=Agate Instigator kicker={1}{R} name(Offspring) auto=@movedTo(other creature|myBattlefield):damage:1 all(opponent) -auto=if paid(kicker) then clone and!( becomes(,1/1) )! +auto=if paid(kicker) then clone and!( becomes(,1/1) forever )! text=Offspring {1}{R} (You may pay an additional {1}{R} as you cast this spell. If you do, when this creature enters, create a 1/1 token copy of it.) -- Whenever another creature you control enters, this creature deals 1 damage to each opponent. mana={1}{R} type=Creature @@ -13148,9 +13148,9 @@ toughness=2 name=Brightcap Badger // Fungus Frolic abilities=adventure other={2}{G} name(Adventure) -auto=if paid(alternative) then create(saproling:creature saproling:1/1:green)*2 +auto=if paid(alternative) then _SAPROLINGTOKEN_*2 auto=lord(*[Fungus;Saproling]|mybattlefield) {T}:Add{G} -auto=@each my end:create(saproling:creature saproling:1/1:green) +auto=@each my end:_SAPROLINGTOKEN_ text=Each Fungus and Saproling you control has "{T}: Add {G}." -- At the beginning of your end step, create a 1/1 green Saproling creature token. mana={3}{G} type=Creature @@ -13843,7 +13843,8 @@ toughness=2 name=Burakos, Party Leader abilities=backgroundpartner auto=becomes(Cleric Rogue Warrior Wizard) -auto=_ATTACKING_damage:calculateparty opponent && _TREASURE_*calculateparty +auto=_ATTACKING__TREASURE_*calculateparty +auto=_ATTACKING_damage:calculateparty opponent text=Burakos, Party Leader is also a Cleric, Rogue, Warrior, and Wizard. -- Whenever Burakos attacks, defending player loses X life and you create X Treasure tokens, where X is the number of creatures in your party. -- Choose a Background (You can have a Background as a second commander.) mana={3}{B} type=Legendary Creature @@ -14358,7 +14359,7 @@ toughness=4 [card] name=Cadira, Caller of the Small abilities=trample -auto=@combatdamaged(player) from(this):create(rabbit:creature rabbit:1/1:white)*type:*[token]:myBattlefield +auto=@combatdamaged(player) from(this):_RABBITTOKEN_*type:*[token]:myBattlefield text=Trample -- Whenever Cadira, Caller of the Small deals combat damage to a player, for each token you control, create a 1/1 white Rabbit creature token. mana={1}{G}{W} type=Legendary Creature @@ -15317,9 +15318,9 @@ toughness=1 [/card] [card] name=Carrot Cake -auto=create(rabbit:creature rabbit:1/1:white) +auto=_RABBITTOKEN_ auto=_SCRY1_ -auto=@sacrificed(this):create(rabbit:creature rabbit:1/1:white) +auto=@sacrificed(this):_RABBITTOKEN_ auto=@sacrificed(this):_SCRY1_ auto={2}{T}{S}:life:3 text=When Carrot Cake enters the battlefield and when you sacrifice it, create a 1/1 white Rabbit creature token and scry 1. {2}, {T}, Sacrifice Carrot Cake: You gain 3 life. @@ -16075,7 +16076,7 @@ toughness=3 [card] name=Cayth, Famed Mechanist auto=_FABRICATE_(1) -auto=@movedTo(creature[-token]|myBattlefield):all(trigger) transforms((,newability[choice counter(1/1)],newability[choice create(Servo:Artifact Creature Servo:1/1)])) ueot +auto=@movedTo(creature[-token]|myBattlefield):all(trigger) transforms((,newability[choice counter(1/1)],newability[choice _SERVOTOKEN_])) ueot auto={2}{T}:transforms((,newability[_POPULATE_],newability[choice _PROLIFERATE_])) ueot text=Fabricate 1 (When this creature enters, put a +1/+1 counter on it or create a 1/1 colorless Servo artifact creature token.) -- Other nontoken creatures you control have fabricate 1. -- {2}, {T}: Choose one - -- - Populate. -- - Proliferate. mana={1}{U}{R}{W} @@ -18062,7 +18063,7 @@ toughness=4 name=Circling Vultures abilities=flying,flash other={D} name(Discard) -auto=upcost[{l2e}] sacrifice +auto=upcost[{E(creature|mygraveyard)}] sacrifice text=Flying -- You may discard Circling Vultures any time you could cast an instant. -- At the beginning of your upkeep, sacrifice Circling Vultures unless you exile the top creature card of your graveyard. mana={B} type=Creature @@ -19296,7 +19297,7 @@ toughness=5 [/card] [card] name=Collector's Vault -auto={2}{T}:_LOOT_ && _TREASURE_ +auto={2}{T}:_LOOT_ && ability$! choice _TREASURE_ !$ controller text={2}, {T}: Draw a card, then discard a card. Create a Treasure token. (It's an artifact with "{T}, Sacrifice this artifact: Add one mana of any color.") mana={2} type=Artifact @@ -20996,7 +20997,7 @@ toughness=3 [card] name=Coruscation Mage kicker={2} name(Offspring) -auto=if paid(kicker) then clone and!( becomes(,1/1) )! +auto=if paid(kicker) then clone and!( becomes(,1/1) forever )! auto=@movedTo(*[-creature]|mystack):damage:1 all(opponent) text=Offspring {2} (You may pay an additional {2} as you cast this spell. If you do, when this creature enters, create a 1/1 token copy of it.) -- Whenever you cast a noncreature spell, this creature deals 1 damage to each opponent. mana={1}{R} @@ -21233,7 +21234,7 @@ type=Enchantment [card] name=Court of Cunning auto=_MONARCH_CONTROLLER_ -auto=@each my upkeep restriction{compare(pmonarch)~equalto~0}:ability$!name(Choose one) choice name(Opponent mills cards) deplete:3 opponent _ choice name(You mill cards) deplete:3 controller _ choice name(Both player mill cards) deplete:3 controller && deplete:3 opponent _ choice name(No one mills cards) donothing!$ controller +auto=@each my upkeep restriction{compare(pmonarch)~equalto~0}:ability$!name(Choose one) choice name(Opponent mills cards) deplete:3 opponent _ choice name(You mill cards) deplete:3 controller _ choice name(Both players mill cards) deplete:3 controller && deplete:3 opponent _ choice name(No one mills cards) donothing!$ controller auto=@each my upkeep restriction{compare(pmonarch)~equalto~1}:ability$!name(Choose one) choice name(Opponent mills cards) deplete:10 opponent _ choice name(You mill cards) deplete:10 controller _ choice name(Both player mill cards) deplete:10 controller && deplete:10 opponent _ choice name(No one mills cards) donothing!$ controller text=When Court of Cunning enters, you become the monarch. -- At the beginning of your upkeep, any number of target players each mill two cards. If you're the monarch, each of those players mills ten cards instead. (To mill a card, a player puts the top card of their library into their graveyard.) mana={1}{U}{U} @@ -22490,7 +22491,7 @@ toughness=3 [/card] [card] name=Culvert Ambusher -autofaceup=target(creature) mustblock ueot +auto=target(creature) mustblock ueot facedown={3} autofacedown=_WARD2_ autofacedown={4}{G}:morph @@ -23608,7 +23609,7 @@ type=Artifact Land name=Darkstar Augur abilities=flying kicker={B} name(Offspring) -auto=if paid(kicker) then clone and!( becomes(,1/1) )! +auto=if paid(kicker) then clone and!( becomes(,1/1) forever )! auto=@each my upkeep:reveal:1 optionone name(Reveal) target(*|reveal) transforms((,newability[life:-manacost controller])) forever optiononeend optiontwo name(Claim your card) choice all(*|reveal) moveto(hand) optiontwoend revealend text=Offspring {B} (You may pay an additional {B} as you cast this spell. If you do, when this creature enters, create a 1/1 token copy of it.) -- Flying -- At the beginning of your upkeep, reveal the top card of your library and put that card into your hand. You lose life equal to its mana value. mana={2}{B} @@ -26234,7 +26235,7 @@ toughness=3 name=Diamond Pick-Axe abilities=indestructible auto=teach(creature) 1/1 -auto=teach(creature) transforms((,newability[_ATTACKING__TREASURE_])) +auto=@combat(attacking) source(mytgt):_TREASURE_ auto={2}:equip text=Indestructible (Effects that say "destroy" don't destroy this artifact.) -- Equipped creature gets +1/+1 and has "Whenever this creature attacks, create a Treasure token." (It's an artifact with "{T}, Sacrifice this artifact: Add one mana of any color.") -- Equip {2} mana={R} @@ -37023,7 +37024,7 @@ type=Sorcery name=Finch Formation abilities=flying kicker={3} name(Offspring) -auto=if paid(kicker) then clone and!( becomes(,1/1) )! +auto=if paid(kicker) then clone and!( becomes(,1/1) forever )! auto=target(creature|myBattlefield) flying ueot text=Offspring {3} (You may pay an additional {3} as you cast this spell. If you do, when this creature enters, create a 1/1 token copy of it.) -- Flying -- When this creature enters, target creature you control gains flying until end of turn. mana={2}{U} @@ -38256,7 +38257,7 @@ type=Sorcery [card] name=Flowerfoot Swordmaster kicker={2} name(Offspring) -auto=if paid(kicker) then clone and!( becomes(,1/1) )! +auto=if paid(kicker) then clone and!( becomes(,1/1) forever )! auto=_VALIANT_all(mouse|myBattlefield) 1/0 text=Offspring {2} (You may pay an additional {2} as you cast this spell. If you do, when this creature enters, create a 1/1 token copy of it.) -- Valiant - Whenever this creature becomes the target of a spell or ability you control for the first time each turn, Mice you control get +1/+0 until end of turn. mana={W} @@ -48263,7 +48264,7 @@ type=Sorcery [/card] [card] name=Head of the Homestead -auto=create(rabbit:creature rabbit:1/1:white)*2 +auto=_RABBITTOKEN_*2 text=When Head of the Homestead enters, create two 1/1 white Rabbit creature tokens. mana={3}{GW}{GW} type=Creature @@ -48540,8 +48541,7 @@ type=Instant [card] name=Heavenly Blademaster abilities=flying, double strike -auto=may target(aura|battlefield) newhook -auto=may target(equipment|battlefield) newhook +auto=may target(*[aura;equipment]|battlefield) newhook auto=thisforeach(aura) lord(other creature|myBattlefield) 1/1 auto=thisforeach(gear) lord(other creature|myBattlefield) 1/1 text=Flying, double strike -- When Heavenly Blademaster enters, you may attach any number of Auras and Equipment you control to it. -- Other creatures you control get +1/+1 for each Aura and Equipment attached to Heavenly Blademaster. @@ -50341,7 +50341,7 @@ toughness=4 [/card] [card] name=Hop to It -auto=create(rabbit:creature rabbit:1/1:white)*3 +auto=_RABBITTOKEN_*3 text=Create three 1/1 white Rabbit creature tokens. mana={2}{W} type=Sorcery @@ -52381,6 +52381,7 @@ toughness=3 [card] name=Imoti, Celebrant of Bounty autostack=if casted(this) then cascade:plibrarycount +auto=@movedto(*[manacost>=6]|mystack):all(trigger[to]) transforms((,newability[cascade:plibrarycount])) ueot text=Cascade (When you cast this spell, exile cards from the top of your library until you exile a nonland card that costs less. You may cast it without paying its mana cost. Put the exiled cards on the bottom of your library in a random order.) -- Spells you cast with mana value 6 or greater have cascade. mana={3}{G}{U} type=Legendary Creature @@ -54153,7 +54154,7 @@ toughness=3 [card] name=Intrepid Rabbit kicker={1} name(Offspring) -auto=if paid(kicker) then clone and!( becomes(,1/1) )! +auto=if paid(kicker) then clone and!( becomes(,1/1) forever )! auto=target(creature|myBattlefield) 1/1 ueot text=Offspring {1} (You may pay an additional {1} as you cast this spell. If you do, when this creature enters, create a 1/1 token copy of it.) -- When this creature enters, target creature you control gets +1/+1 until end of turn. mana={2}{W} @@ -55037,7 +55038,7 @@ toughness=4 [card] name=Iridescent Vinelasher kicker={2} name(Offspring) -auto=if paid(kicker) then clone and!( becomes(,1/1) )! +auto=if paid(kicker) then clone and!( becomes(,1/1) forever )! auto=_LANDFALL_damage:1 target(opponent) text=Offspring {2} (You may pay an additional {2} as you cast this spell. If you do, when this creature enters, create a 1/1 token copy of it.) -- Landfall - Whenever a land you control enters, this creature deals 1 damage to target opponent. mana={B} @@ -55650,7 +55651,7 @@ toughness=1 name=Jacked Rabbit auto=counter(1/1,X) auto=this(X>=5) draw:1 -auto=_ATTACKING_create(rabbit:creature rabbit:1/1:white)*power +auto=_ATTACKING__RABBITTOKEN_*power text=Ravenous (This creature enters with X +1/+1 counters on it. If X is 5 or more, draw a card when it enters.) -- Whenever Jacked Rabbit attacks, create a number of 1/1 white Rabbit creature tokens equal to Jacked Rabbit's power. mana={X}{1}{W} type=Creature @@ -59721,7 +59722,7 @@ toughness=3 [/card] [card] name=Krenko, Tin Street Kingpin -auto=_ATTACKING_create(goblin:goblin creature:1/1:red)*power +auto=_ATTACKING__GOBLINTOKEN_*power auto=_ATTACKING_counter(1/1) text=Whenever Krenko, Tin Street Kingpin attacks, put a +1/+1 counter on it, then create a number of 1/1 red Goblin creature tokens equal to Krenko's power. mana={2}{R} @@ -65105,7 +65106,7 @@ type=Artifact [card] name=Manifold Mouse kicker={2} name(Offspring) -auto=if paid(kicker) then clone and!( becomes(,1/1) )! +auto=if paid(kicker) then clone and!( becomes(,1/1) forever )! auto=@each my combatbegins:target(mouse|myBattlefield) transforms((,newability[choice all(this) double strike],newability[choice all(this) trample])) ueot text=Offspring {2} (You may pay an additional {2} as you cast this spell. If you do, when this creature enters, create a 1/1 token copy of it.) -- At the beginning of combat on your turn, target Mouse you control gains your choice of double strike or trample until end of turn. mana={1}{R} @@ -66037,7 +66038,7 @@ toughness=4 [card] name=Master's Rebuke target=creature|myBattlefield -auto=transforms((,newability[dynamicability target(creature,planeswalker|opponentbattlefield)])) +auto=transforms((,newability[target(*[creature;planeswalker]|opponentbattlefield) dynamicability ])) forever text=Target creature you control deals damage equal to its power to target creature or planeswalker you don't control. mana={1}{G} type=Instant @@ -75237,7 +75238,7 @@ type=Sorcery [/card] [card] name=Open the Graves -auto=@movedto(creature[-token]|graveyard) from(mybattlefield):create(zombie:creature zombie:2/2:black) +auto=@movedto(creature[-token]|graveyard) from(mybattlefield):_ZOMBIETOKEN_ text=Whenever a nontoken creature you control dies, create a 2/2 black Zombie creature token. mana={3}{B}{B} type=Enchantment @@ -81189,7 +81190,7 @@ toughness=2 name=Prosperous Bandit abilities=first strike kicker={1} name(Offspring) -auto=if paid(kicker) then clone and!( becomes(,1/1) )! +auto=if paid(kicker) then clone and!( becomes(,1/1) forever )! auto=@combatdamaged(player) from(this):token(Treasure,Treasure Artifact,0/0) and!( transforms((,newability[{T}{S}:Add{W}],newability[{T}{S}:Add{U}],newability[{T}{S}:Add{B}],newability[{T}{S}:Add{R}],newability[{T}{S}:Add{G}],newability[tap(noevent)])) forever )!*thatmuch text=Offspring {1} (You may pay an additional {1} as you cast this spell. If you do, when this creature enters, create a 1/1 token copy of it.) -- First strike -- Whenever this creature deals combat damage to a player, create that many tapped Treasure tokens. mana={2}{R} @@ -82064,7 +82065,7 @@ type=Instant [card] name=Pyxis of Pandemonium auto={T}:name(Exile top cards) all(*[zpos=1]|library) hiddenmoveto(ownerexile) and!( counter(0/0.1.PyxisExiled) )! -auto={7}{T}:name(Put permanents in play) all(*[-instant;-sorcery;counter{0/0.1.PyxisExiled}]|exile) moveto(ownerbattlefield) +auto={7}{T}{S}:name(Put permanents in play) all(*[-instant;-sorcery;counter{0/0.1.PyxisExiled}]|exile) moveto(ownerbattlefield) text={T}: Each player exiles the top card of their library face down. -- {7}, {T}, Sacrifice Pyxis of Pandemonium: Each player turns face up all cards they owns exiled with Pyxis of Pandemonium, then puts all permanent cards among them onto the battlefield. mana={1} type=Artifact @@ -88684,7 +88685,7 @@ type=Sorcery [/card] [card] name=Rousing of Souls -auto=all(*[zpos=1]|library) moveto(hand) and!( transforms((,newability[if cantargetcard(*[-land]|*) then token(Spirit^Creature Spirit^1/1^white^flying)],newability[choice name(Put back and draw) moveto(ownerlibrary) and!( draw:1 )!])) oneshot )! +auto=all(*[zpos=1]|library) moveto(hand) and!( transforms((,newability[if cantargetcard(*[-land]|*) then token(Spirit^Creature Spirit^1/1^white^flying) srccontroller],newability[choice name(Put back and draw) moveto(ownerlibrary) and!( draw:1 )!])) oneshot )! text=Parley - Each player reveals the top card of their library. For each nonland card revealed this way, you put a 1/1 white Spirit creature token with flying onto the battlefield. Then each player draws a card. mana={2}{W} type=Sorcery @@ -89032,7 +89033,7 @@ toughness=3 [card] name=Rulik Mons, Warren Chief abilities=menace -auto=_ATTACKING_reveal:1 optionone if type(land|reveal)~morethan~0 then target(*|reveal) transforms((,newability[moveTo(mybattlefield)],newability[tap(noevent)])) else all(*|reveal) moveto(mylibrary) && create(goblin:creature goblin:1/1:red) optiononeend revealend +auto=_ATTACKING_reveal:1 optionone if type(land|reveal)~morethan~0 then target(*|reveal) transforms((,newability[moveTo(mybattlefield)],newability[tap(noevent)])) else all(*|reveal) moveto(mylibrary) && _GOBLINTOKEN_ optiononeend revealend text=Menace (This creature can't be blocked except by two or more creatures.) -- Whenever Rulik Mons, Warren Chief attacks, look at the top card of your library. If it's a land card, you may put it onto the battlefield tapped. If you didn't put a card onto the battlefield this way, create a 1/1 red Goblin creature token. mana={1}{R}{G}{G} type=Legendary Creature @@ -89533,7 +89534,7 @@ toughness=1 [card] name=Rust-Shield Rampager kicker={2} name(Offspring) -auto=if paid(kicker) then clone and!( becomes(,1/1) )! +auto=if paid(kicker) then clone and!( becomes(,1/1) forever )! auto=cantbeblockedby(creature[power<=2]) text=Offspring {2} (You may pay an additional {2} as you cast this spell. If you do, when this creature enters, create a 1/1 token copy of it.) -- This creature can't be blocked by creatures with power 2 or less. mana={3}{G} @@ -96052,7 +96053,7 @@ type=Enchantment [card] name=Sigil of Valor auto={1}:equip -auto=teach(creature) transforms((,newability[@combat(attackedalone) source(this):foreach(other creature|myBattlefield) 1/1 ueot])) +auto=@combat(attackedalone) source(mytgt):foreach(other creature|myBattlefield) 1/1 ueot text=Whenever equipped creature attacks alone, it gets +1/+1 until end of turn for each other creature you control. -- Equip {1} ({1}: Attach to target creature you control. Equip only as a sorcery.) mana={2} type=Artifact @@ -96308,7 +96309,7 @@ toughness=1 [card] name=Silver-Fur Master #MISSING: Ninjutsu abilities you activate cost {1} less to activate. -autohand={U}{B}:ninjutsu +autohand={U}{B}{N}:ninjutsu auto=lord(other creature[ninja]|mybattlefield) 1/1 auto=lord(other creature[rogue]|mybattlefield) 1/1 text=Ninjutsu {U}{B} ({U}{B}, Return an unblocked attacker you control to hand: Put this card onto the battlefield from your hand tapped and attacking.) -- Ninjutsu abilities you activate cost {1} less to activate. -- Other Ninja and Rogue creatures you control get +1/+1. @@ -98330,8 +98331,7 @@ toughness=5 [card] name=Sludge Titan abilities=trample -auto= -auto=_ATTACKING_deplete:5 may creature and/or a land from among them inmoveto(hand) +auto=_ATTACKING_name(Mill 5 cards) all(*[zpos<=4]|mylibrary) moveto(mygraveyard) and!( transforms((tobereturn,newability[all(*[zpos=5]|mylibrary) moveto(mygraveyard) and!( transforms((tobereturn,newability[if type(tobereturn[creature;land]|mygraveyard)~morethan~0 then may target(tobereturn[creature;land]|mygraveyard) moveto(hand)])) ueot )!])) ueot )! text=Trample -- Whenever Sludge Titan enters the battlefield or attacks, mill five cards. You may put a creature card and/or a land card from among them into your hand. mana={4}{BG}{BG} type=Creature @@ -99198,7 +99198,7 @@ toughness=1 [/card] [card] name=Sonar Strike -auto=choice name(target attacking or blocking) target(creature[attacking;blocking) damage:4 restriction{type(creature[attacking;blocking])~morethan~0} +auto=choice name(target attacking or blocking) target(creature[attacking;blocking]) damage:4 restriction{type(creature[attacking;blocking])~morethan~0} auto=choice name(target tapped creature) target(creature[tapped]) damage:4 restriction{type(creature[tapped])~morethan~0} auto=aslongas(bat|myBattlefield) life:3 controller text=Sonar Strike deals 4 damage to target attacking, blocking, or tapped creature. You gain 3 life if you control a Bat. @@ -101155,7 +101155,7 @@ toughness=4 [card] name=Splash Lasher kicker={1}{U} name(Offspring) -auto=if paid(kicker) then clone and!( becomes(,1/1) )! +auto=if paid(kicker) then clone and!( becomes(,1/1) forever )! auto=may target(creature) transforms((,newability[tap],newability[counter(0/0.1.Stun)])) text=Offspring {1}{U} (You may pay an additional {1}{U} as you cast this spell. If you do, when this creature enters, create a 1/1 token copy of it.) -- When this creature enters, tap up to one target creature and put a stun counter on it. (If a permanent with a stun counter would become untapped, remove one from it instead.) mana={3}{U} @@ -102062,7 +102062,7 @@ type=Sorcery name=Starscape Cleric abilities=flying,cantblock kicker={2}{B} name(Offspring) -auto=if paid(kicker) then clone and!( becomes(,1/1) )! +auto=if paid(kicker) then clone and!( becomes(,1/1) forever )! auto=@lifeof(player) from(*[-lifefaker]|*):life:-1 opponent text=Offspring {2}{B} (You may pay an additional {2}{B} as you cast this spell. If you do, when this creature enters, create a 1/1 token copy of it.) -- Flying -- This creature can't block. -- Whenever you gain life, each opponent loses 1 life. mana={1}{B} @@ -102252,7 +102252,7 @@ type=Sorcery [card] name=Steampath Charger kicker={2} name(Offspring) -auto=if paid(kicker) then clone and!( becomes(,1/1) )! +auto=if paid(kicker) then clone and!( becomes(,1/1) forever )! auto=_DIES_damage:1 target(player) text=Offspring {2} (You may pay an additional {2} as you cast this spell. If you do, when this creature enters, create a 1/1 token copy of it.) -- When this creature dies, it deals 1 damage to target player. mana={1}{R} @@ -102403,7 +102403,7 @@ toughness=0 name=Steelburr Champion abilities=vigilance kicker={1}{W} name(Offspring) -auto=if paid(kicker) then clone and!( becomes(,1/1) )! +auto=if paid(kicker) then clone and!( becomes(,1/1) forever )! auto=@movedTo(*[-creature]|opponentstack):counter(1/1) text=Offspring {1}{W} (You may pay an additional {1}{W} as you cast this spell. If you do, when this creature enters, create a 1/1 token copy of it.) -- Vigilance -- Whenever an opponent casts a noncreature spell, put a +1/+1 counter on this creature. mana={2}{W} @@ -105057,7 +105057,7 @@ type=Sorcery [/card] [card] name=Swarmyard Massacre -auto=create(squirrel:creature squirrel:1/1:green)*2 && all(*[-Insect;-Rat;-Spider;-Squirrel]) -type:*[Insect;Rat;Spider;Squirrel]:mybattlefield/-type:*[Insect;Rat;Spider;Squirrel]:mybattlefield +auto=_SQUIRRELTOKEN_*2 && all(*[-Insect;-Rat;-Spider;-Squirrel]) -type:*[Insect;Rat;Spider;Squirrel]:mybattlefield/-type:*[Insect;Rat;Spider;Squirrel]:mybattlefield text=Create two 1/1 green Squirrel creature tokens. Then each creature that isn't an Insect, Rat, Spider, or Squirrel gets -1/-1 until end of turn for each creature you control that's an Insect, Rat, Spider, or Squirrel. mana={3}{B}{B} type=Sorcery @@ -107408,7 +107408,7 @@ type=Instant [card] name=Tender Wildguide kicker={2} name(Offspring) -auto=if paid(kicker) then clone and!( becomes(,1/1) )! +auto=if paid(kicker) then clone and!( becomes(,1/1) forever )! auto={T}:Add{W} auto={T}:Add{U} auto={T}:Add{B} @@ -109412,7 +109412,7 @@ subtype=Equipment [/card] [card] name=Third Path Iconoclast -auto=@movedTo(*[-creature]|mystack):create(soldier:artifact creature soldier :1/1) +auto=@movedTo(*[-creature]|mystack):create(soldier:artifact creature soldier:1/1) text=Whenever you cast a noncreature spell, create a 1/1 colorless Soldier artifact creature token. mana={U}{R} type=Creature @@ -109598,7 +109598,7 @@ toughness=3 [card] name=Thornplate Intimidator kicker={3} name(Offspring) -auto=if paid(kicker) then clone and!( becomes(,1/1) )! +auto=if paid(kicker) then clone and!( becomes(,1/1) forever )! auto=target(opponent) ability$!name(Choose one) choice life:-3 controller _ choice sacrifice notatarget(*[-land]|mybattlefield) _ choice reject notatarget(*|myhand) !$ targetedplayer text=Offspring {3} (You may pay an additional {3} as you cast this spell. If you do, when this creature enters, create a 1/1 token copy of it.) -- When this creature enters, target opponent loses 3 life unless they sacrifice a nonland permanent or discard a card. mana={3}{B} @@ -110412,7 +110412,7 @@ toughness=7 [card] name=Thundertrap Trainer kicker={4} name(Offspring) -auto=if paid(kicker) then clone and!( becomes(,1/1) )! +auto=if paid(kicker) then clone and!( becomes(,1/1) forever )! auto=name(look) reveal:4 optionone choice target(*[-creature;-land]|reveal) moveto(hand) optiononeend optiontwo name(bottom of library) all(*|reveal) bottomoflibrary optiontwoend revealend text=Offspring {4} (You may pay an additional {4} as you cast this spell. If you do, when this creature enters, create a 1/1 token copy of it.) -- When this creature enters, look at the top four cards of your library. You may reveal a noncreature, nonland 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}{U} @@ -114180,8 +114180,8 @@ toughness=2 [/card] [card] name=Undercellar Myconid -auto=create(saproling:creature saproling:1/1:green) -auto=_DIES_create(saproling:creature saproling:1/1:green) +auto=_SAPROLINGTOKEN_ +auto=_DIES__SAPROLINGTOKEN_ auto={T}:Add{W} auto={T}:Add{U} auto={T}:Add{B} @@ -114926,7 +114926,7 @@ toughness=1 name=Unsubstantiate restriction=compare(type:creature:battlefieldplustype:*:stackplusend)~morethan~0 auto=if type(creature|battlefield)~morethan~0 then choice name(Return target creature) name(Return target creature) target(creature|battlefield) moveTo(hand) -auto=if type(*|stack)~morethan~1 then choice name(Return target spell) name(Return target spell) target(*|stack) spellmover(hand) +auto=if type(*|stack)~morethan~0 then choice name(Return target spell) name(Return target spell) target(*|stack) spellmover(hand) text=Return target spell or creature to its owner's hand. mana={1}{U} type=Instant @@ -119487,7 +119487,7 @@ toughness=3 [card] name=Warren Warleader kicker={2} name(Offspring) -auto=if paid(kicker) then clone and!( becomes(,1/1) )! +auto=if paid(kicker) then clone and!( becomes(,1/1) forever )! auto=@each my blockers:ability$! choice create(rabbit:creature rabbit:1/1:white:battleready) _ choice all(creature[attacking]|myBattlefield) 1/1 !$ controller text=Offspring {2} (You may pay an additional {2} as you cast this spell. If you do, when this creature enters, create a 1/1 token copy of it.) -- Whenever you attack, choose one - -- - Create a 1/1 white Rabbit creature token that's tapped and attacking. -- - Attacking creatures you control get +1/+1 until end of turn. mana={2}{W}{W} @@ -122216,6 +122216,7 @@ toughness=3 [card] name=Wurmquake auto=name(Create wurm) token(Phyrexian Wurm,Creature Phyrexian Wurm,totmanaspent/totmanaspent,green,trample,poisontoxic) +auto=if compare(opponentpoisoncount)~morethan~2 then name(Create wurm) token(Phyrexian Wurm,Creature Phyrexian Wurm,totmanaspent/totmanaspent,green,trample,poisontoxic) flashback={8}{G}{G} text=Corrupted - Create an X/X green Phyrexian Wurm creature token with trample and toxic 1, where X is the amount of mana spent to cast this spell. Then for each opponent with three or more poison counters, you create another one of those tokens. -- Flashback {8}{G}{G} (You may cast this card from your graveyard for its flashback cost. Then exile it.) mana={4}{G}{G} @@ -123413,7 +123414,7 @@ toughness=2 name=Zinnia, Valley's Voice abilities=flying auto=foreach(other creature[power=1]|myBattlefield) 1/0 -auto=@movedto(creature|mybattlefield) from(mystack):all(trigger) name() name(Offspring) pay[[{2}]] clone and!( becomes(,1/1) )! +auto=@movedto(creature|mybattlefield) from(mystack):all(trigger) name() name(Offspring) pay[[{2}]] clone and!( becomes(,1/1) forever )! text=Flying -- Zinnia, Valley's Voice gets +X/+0, where X is the number of other creatures you control with base power 1. -- Creature spells you cast have offspring {2}. (You may pay an additional {2} as you cast a creature spell. If you do, when that creature enters, create a 1/1 token copy of it.) mana={U}{R}{W} type=Legendary Creature diff --git a/projects/mtg/bin/Res/sets/primitives/mtg.txt b/projects/mtg/bin/Res/sets/primitives/mtg.txt index b30893f9d..740ff1feb 100644 --- a/projects/mtg/bin/Res/sets/primitives/mtg.txt +++ b/projects/mtg/bin/Res/sets/primitives/mtg.txt @@ -6199,7 +6199,7 @@ name=Artisan's Sorrow target=*[artifact;enchantment] auto=destroy aicode=activate transforms((,newability[all(*[zpos<=2]|mylibrary) transforms((,newability[may name(Put on bottom of library) moveto(myreveal) and!( bottomoflibrary )!])) oneshot])) oneshot -auto=_SCRY2_ +auto=ability$! _SCRY2_ !$ controller text=Destroy target artifact or enchantment. Scry 2. (Look at the top two cards of your library, then put any number of them on the bottom of your library and the rest on top in any order.) mana={3}{G} type=Instant @@ -9328,7 +9328,7 @@ toughness=1 [/card] [card] name=Barrow Ghoul -auto=upcost[{l2e}] sacrifice +auto=upcost[{E(creature|mygraveyard)}] sacrifice text=At the beginning of your upkeep, sacrifice Barrow Ghoul unless you exile the top creature card of your graveyard. mana={1}{B} type=Creature @@ -18892,7 +18892,7 @@ toughness=5 [card] name=Chaos Warp target=*|battlefield -auto=moveto(ownerlibrary) and!(shuffle && ability$!Reveal:1 revealzone(mylibrary) optionone choice name(Look) target(*[-instant;-sorcery]|reveal) moveto(battlefield) optiononeend optiontwo choice name(put in library) all(*|reveal) moveto(library) optiontwoend revealend !$ targetcontroller)! +auto=moveto(ownerlibrary) and!(shuffle && ability$!Reveal:1 revealzone(mylibrary) optionone choice name(Look) all(*[-instant;-sorcery]|reveal) moveto(battlefield) optiononeend optiontwo choice name(put in library) all(*|reveal) moveto(library) optiontwoend revealend !$ targetcontroller)! text=The owner of target permanent shuffles it into their library, then reveals the top card of their library. If it's a permanent card, they puts it onto the battlefield. mana={2}{R} type=Instant @@ -36885,14 +36885,14 @@ toughness=2 [/card] [card] name=Escaped Shapeshifter -auto=aslongas(creature[flying;-escaped shapeshifter]|opponentBattlefield) flying -auto=aslongas(creature[first strike;-escaped shapeshifter]|opponentBattlefield) first strike -auto=aslongas(creature[trample;-escaped shapeshifter]|opponentBattlefield) trample -auto=aslongas(creature[protection from black;-escaped shapeshifter]|opponentBattlefield) protection from black -auto=aslongas(creature[protection from blue;-escaped shapeshifter]|opponentBattlefield) protection from blue -auto=aslongas(creature[protection from red;-escaped shapeshifter]|opponentBattlefield) protection from red -auto=aslongas(creature[protection from white;-escaped shapeshifter]|opponentBattlefield) protection from white -auto=aslongas(creature[protection from green;-escaped shapeshifter]|opponentBattlefield) protection from green +auto=aslongas(creature[flying]|opponentBattlefield) flying +auto=aslongas(creature[first strike]|opponentBattlefield) first strike +auto=aslongas(creature[trample]|opponentBattlefield) trample +auto=aslongas(creature[protection from black]|opponentBattlefield) protection from black +auto=aslongas(creature[protection from blue]|opponentBattlefield) protection from blue +auto=aslongas(creature[protection from red]|opponentBattlefield) protection from red +auto=aslongas(creature[protection from white]|opponentBattlefield) protection from white +auto=aslongas(creature[protection from green]|opponentBattlefield) protection from green text=As long as an opponent controls a creature with flying not named Escaped Shapeshifter, Escaped Shapeshifter has flying. The same is true for first strike, trample, and protection from any color. mana={3}{U}{U} type=Creature diff --git a/projects/mtg/src/WFilter.cpp b/projects/mtg/src/WFilter.cpp index ace2f2047..49aa8f207 100644 --- a/projects/mtg/src/WFilter.cpp +++ b/projects/mtg/src/WFilter.cpp @@ -566,7 +566,6 @@ float WCFilterAbility::filterFee() default: return 0.4f; } - return 0.0f; } //WCFilterType