Improved target chooser to allow a multiple selection for player, creature and planeswalkers, now it's possible to use target(player,creature,planeswalkers) as well as target(<variable>player,creature,planeswalkers) and so on. Added abilities for giving exiledeath and handdeath to instant and sorceries (the previous were not working fine), Added ability to identify the cards with Cycling ability as a target, Updated all primitives with cycling ability, fixed all primitives with choose any target ability, Added/fixed primitives from RIX set.

This commit is contained in:
valfieri
2020-12-18 19:04:51 +01:00
parent 0d2e4af2a3
commit e67078355a
11 changed files with 722 additions and 429 deletions
@@ -17,26 +17,26 @@ auto=@lifelostof(player):removesinglecountertype(thatmuch) from(planeswalker[Abi
auto=@lifeof(player):counter(0/0,thatmuch,Loyalty) all(this)
auto={C(0/0,2,Loyalty)}:name(+3: Discard your hand and draw a card equal to highest power) reject all(*|myhand) && draw:power:highest:creature:mybattlefield controller
auto={C(0/0,-3,Loyalty)}:name(+1: Create a 3/2 Spirit) token(Spirit,Creature Spirit,3/2,red,green)
auto={C(0/0,-1,Loyalty)}:name(-1: Deals 1 damage to any target) ability$!name(Choose one) choice name(Damage player) damage:1 target(player) _ choice name(Damage creature) damage:1 target(creature) _ choice name(Damage planeswalker) damage:1 target(planeswalker)!$ controller
auto={C(0/0,-2,Loyalty)}:name(-2: Deals 2 damage to any target) ability$!name(Choose one) choice name(Damage player) damage:2 target(player) _ choice name(Damage creature) damage:2 target(creature) _ choice name(Damage planeswalker) damage:2 target(planeswalker)!$ controller
auto={C(0/0,-3,Loyalty)}:name(-3: Deals 3 damage to any target) ability$!name(Choose one) choice name(Damage player) damage:3 target(player) _ choice name(Damage creature) damage:3 target(creature) _ choice name(Damage planeswalker) damage:3 target(planeswalker)!$ controller
auto={C(0/0,-4,Loyalty)}:name(-4: Deals 4 damage to any target) ability$!name(Choose one) choice name(Damage player) damage:4 target(player) _ choice name(Damage creature) damage:4 target(creature) _ choice name(Damage planeswalker) damage:4 target(planeswalker)!$ controller
auto={C(0/0,-5,Loyalty)}:name(-5: Deals 5 damage to any target) ability$!name(Choose one) choice name(Damage player) damage:5 target(player) _ choice name(Damage creature) damage:5 target(creature) _ choice name(Damage planeswalker) damage:5 target(planeswalker)!$ controller
auto={C(0/0,-6,Loyalty)}:name(-6: Deals 6 damage to any target) ability$!name(Choose one) choice name(Damage player) damage:6 target(player) _ choice name(Damage creature) damage:6 target(creature) _ choice name(Damage planeswalker) damage:6 target(planeswalker)!$ controller
auto={C(0/0,-7,Loyalty)}:name(-7: Deals 7 damage to any target) ability$!name(Choose one) choice name(Damage player) damage:7 target(player) _ choice name(Damage creature) damage:7 target(creature) _ choice name(Damage planeswalker) damage:7 target(planeswalker)!$ controller
auto={C(0/0,-8,Loyalty)}:name(-8: Deals 8 damage to any target) ability$!name(Choose one) choice name(Damage player) damage:8 target(player) _ choice name(Damage creature) damage:8 target(creature) _ choice name(Damage planeswalker) damage:8 target(planeswalker)!$ controller
auto={C(0/0,-9,Loyalty)}:name(-9: Deals 9 damage to any target) ability$!name(Choose one) choice name(Damage player) damage:9 target(player) _ choice name(Damage creature) damage:9 target(creature) _ choice name(Damage planeswalker) damage:9 target(planeswalker)!$ controller
auto={C(0/0,-10,Loyalty)}:name(-10: Deals 10 damage to any target) ability$!name(Choose one) choice name(Damage player) damage:10 target(player) _ choice name(Damage creature) damage:10 target(creature) _ choice name(Damage planeswalker) damage:10 target(planeswalker)!$ controller
auto={C(0/0,-11,Loyalty)}:name(-11: Deals 11 damage to any target) ability$!name(Choose one) choice name(Damage player) damage:11 target(player) _ choice name(Damage creature) damage:11 target(creature) _ choice name(Damage planeswalker) damage:11 target(planeswalker)!$ controller
auto={C(0/0,-12,Loyalty)}:name(-12: Deals 12 damage to any target) ability$!name(Choose one) choice name(Damage player) damage:12 target(player) _ choice name(Damage creature) damage:12 target(creature) _ choice name(Damage planeswalker) damage:12 target(planeswalker)!$ controller
auto={C(0/0,-13,Loyalty)}:name(-13: Deals 13 damage to any target) ability$!name(Choose one) choice name(Damage player) damage:13 target(player) _ choice name(Damage creature) damage:13 target(creature) _ choice name(Damage planeswalker) damage:13 target(planeswalker)!$ controller
auto={C(0/0,-14,Loyalty)}:name(-14: Deals 14 damage to any target) ability$!name(Choose one) choice name(Damage player) damage:14 target(player) _ choice name(Damage creature) damage:14 target(creature) _ choice name(Damage planeswalker) damage:14 target(planeswalker)!$ controller
auto={C(0/0,-15,Loyalty)}:name(-15: Deals 15 damage to any target) ability$!name(Choose one) choice name(Damage player) damage:15 target(player) _ choice name(Damage creature) damage:15 target(creature) _ choice name(Damage planeswalker) damage:15 target(planeswalker)!$ controller
auto={C(0/0,-16,Loyalty)}:name(-16: Deals 16 damage to any target) ability$!name(Choose one) choice name(Damage player) damage:16 target(player) _ choice name(Damage creature) damage:16 target(creature) _ choice name(Damage planeswalker) damage:16 target(planeswalker)!$ controller
auto={C(0/0,-17,Loyalty)}:name(-17: Deals 17 damage to any target) ability$!name(Choose one) choice name(Damage player) damage:17 target(player) _ choice name(Damage creature) damage:17 target(creature) _ choice name(Damage planeswalker) damage:17 target(planeswalker)!$ controller
auto={C(0/0,-18,Loyalty)}:name(-18: Deals 18 damage to any target) ability$!name(Choose one) choice name(Damage player) damage:18 target(player) _ choice name(Damage creature) damage:18 target(creature) _ choice name(Damage planeswalker) damage:18 target(planeswalker)!$ controller
auto={C(0/0,-19,Loyalty)}:name(-19: Deals 19 damage to any target) ability$!name(Choose one) choice name(Damage player) damage:19 target(player) _ choice name(Damage creature) damage:19 target(creature) _ choice name(Damage planeswalker) damage:19 target(planeswalker)!$ controller
auto={C(0/0,-20,Loyalty)}:name(-20: Deals 20 damage to any target) ability$!name(Choose one) choice name(Damage player) damage:20 target(player) _ choice name(Damage creature) damage:20 target(creature) _ choice name(Damage planeswalker) damage:20 target(planeswalker)!$ controller
auto={C(0/0,-1,Loyalty)}:name(-1: Deals 1 damage to any target) damage:1 target(player,creature,planeswalker)
auto={C(0/0,-2,Loyalty)}:name(-2: Deals 2 damage to any target) damage:2 target(player,creature,planeswalker)
auto={C(0/0,-3,Loyalty)}:name(-3: Deals 3 damage to any target) damage:3 target(player,creature,planeswalker)
auto={C(0/0,-4,Loyalty)}:name(-4: Deals 4 damage to any target) damage:4 target(player,creature,planeswalker)
auto={C(0/0,-5,Loyalty)}:name(-5: Deals 5 damage to any target) damage:5 target(player,creature,planeswalker)
auto={C(0/0,-6,Loyalty)}:name(-6: Deals 6 damage to any target) damage:6 target(player,creature,planeswalker)
auto={C(0/0,-7,Loyalty)}:name(-7: Deals 7 damage to any target) damage:7 target(player,creature,planeswalker)
auto={C(0/0,-8,Loyalty)}:name(-8: Deals 8 damage to any target) damage:8 target(player,creature,planeswalker)
auto={C(0/0,-9,Loyalty)}:name(-9: Deals 9 damage to any target) damage:9 target(player,creature,planeswalker)
auto={C(0/0,-10,Loyalty)}:name(-10: Deals 10 damage to any target) damage:10 target(player,creature,planeswalker)
auto={C(0/0,-11,Loyalty)}:name(-11: Deals 11 damage to any target) damage:11 target(player,creature,planeswalker)
auto={C(0/0,-12,Loyalty)}:name(-12: Deals 12 damage to any target) damage:12 target(player,creature,planeswalker)
auto={C(0/0,-13,Loyalty)}:name(-13: Deals 13 damage to any target) damage:13 target(player,creature,planeswalker)
auto={C(0/0,-14,Loyalty)}:name(-14: Deals 14 damage to any target) damage:14 target(player,creature,planeswalker)
auto={C(0/0,-15,Loyalty)}:name(-15: Deals 15 damage to any target) damage:15 target(player,creature,planeswalker)
auto={C(0/0,-16,Loyalty)}:name(-16: Deals 16 damage to any target) damage:16 target(player,creature,planeswalker)
auto={C(0/0,-17,Loyalty)}:name(-17: Deals 17 damage to any target) damage:17 target(player,creature,planeswalker)
auto={C(0/0,-18,Loyalty)}:name(-18: Deals 18 damage to any target) damage:18 target(player,creature,planeswalker)
auto={C(0/0,-19,Loyalty)}:name(-19: Deals 19 damage to any target) damage:19 target(player,creature,planeswalker)
auto={C(0/0,-20,Loyalty)}:name(-20: Deals 20 damage to any target) damage:20 target(player,creature,planeswalker)
text=As Abian, Luvion Usurper enters the battlefield, you become Abian. (Your life total becomes equal to their loyalty. You can activate the loyalty abilities by spending or gaining life.) -- +3: Discard your hand, then draw cards equal to the greatest power among creatures you control. -- +1: Create a 3/2 red and green Spirit creature token. -- X: You deal X damage to any target.
mana={5}{R}{G}
type=Legendary Planeswalker
@@ -161,7 +161,7 @@ subtype=Ajani
name=Ajani Vengeant
auto=counter(0/0,3,loyalty)
auto={C(0/0,1,Loyalty)}:name(+1: Permanent doesn't untap) frozen target(*)
auto={C(0/0,-2,Loyalty)}:name(-2: Deals 3 damage and gain 3 life) damage:3 target(creature,player) && life:3 controller
auto={C(0/0,-2,Loyalty)}:name(-2: Deals 3 damage and gain 3 life) damage:3 target(player,creature,planeswalker) && life:3 controller
auto={C(0/0,-7,Loyalty)}:name(-7: Destroy all lands) target(player) destroy all(land|targetedpersonsbattlefield)
text=+1: Target permanent doesn't untap during its controller's next untap step. -- -2: Ajani Vengeant deals 3 damage to any target and you gain 3 life. -- -7: Destroy all lands target player controls.
mana={2}{R}{W}
@@ -386,7 +386,7 @@ name=Chandra, Acolyte of Flame
auto=counter(0/0,4,loyalty)
auto={C(0/0,0,Loyalty)}:name(+0: Put a loyalty counter on each red planeswalker) counter(0/0,1,loyalty) all(planeswalker[red]|myBattlefield)
auto={C(0/0,0,Loyalty)}:name(+0: Create two 1/1 Elemental) token(Elemental,Creature Elemental,1/1,red,haste,treason)*2
auto={C(0/0,-2,Loyalty)}:name(-2: May cast an instant or sorcery with mana cost 3 or less) target(*[instant;sorcery;manacost<=3]|mygraveyard) and!(transforms((,newability[CanPlayFromGraveyard],newability[exiledeath])) ueot)!
auto={C(0/0,-2,Loyalty)}:name(-2: May cast an instant or sorcery with mana cost 3 or less) target(*[instant;sorcery;manacost<=3]|mygraveyard) transforms((,newability[CanPlayFromGraveyard],newability[gainedexiledeath])) ueot
text=0: Put a loyalty counter on each red planeswalker you control. -- 0: Create two 1/1 red Elemental creature tokens. They gain haste. Sacrifice them at the beginning of the next end step. -- -2: You may cast target instant or sorcery card with converted mana cost 3 or less from your graveyard. If that card would be put into your graveyard this turn, exile it instead.
mana={1}{R}{R}
type=Legendary Planeswalker
@@ -398,7 +398,26 @@ auto=nofizzle
auto=counter(0/0,6,loyalty)
auto={C(0/0,2,Loyalty)}:name(+2: Emblem: "1 damage each upkeep") emblem transforms((,newability[@each opponent upkeep:damage:1 opponent])) forever dontremove
auto={C(0/0,-3,Loyalty)}:name(-3: Deals 3 damage to each non-elemental) damage:3 all(creature[-elemental])
auto={C(0/0,-X,Loyalty)}:name(-X: Deals X damage to target and exile) damage:X target(creature,planeswalker) exiledeath ueot
auto={C(0/0,-1,Loyalty)}:name(-1: Deals 1 damage to target and exile) target(creature,planeswalker) transforms((,newability[exiledeath],newability[damage:1])) ueot
auto={C(0/0,-2,Loyalty)}:name(-2: Deals 2 damage to target and exile) target(creature,planeswalker) transforms((,newability[exiledeath],newability[damage:2])) ueot
auto={C(0/0,-3,Loyalty)}:name(-3: Deals 3 damage to target and exile) target(creature,planeswalker) transforms((,newability[exiledeath],newability[damage:3])) ueot
auto={C(0/0,-4,Loyalty)}:name(-4: Deals 4 damage to target and exile) target(creature,planeswalker) transforms((,newability[exiledeath],newability[damage:4])) ueot
auto={C(0/0,-5,Loyalty)}:name(-5: Deals 5 damage to target and exile) target(creature,planeswalker) transforms((,newability[exiledeath],newability[damage:5])) ueot
auto={C(0/0,-6,Loyalty)}:name(-6: Deals 6 damage to target and exile) target(creature,planeswalker) transforms((,newability[exiledeath],newability[damage:6])) ueot
auto={C(0/0,-7,Loyalty)}:name(-7: Deals 7 damage to target and exile) target(creature,planeswalker) transforms((,newability[exiledeath],newability[damage:7])) ueot
auto={C(0/0,-8,Loyalty)}:name(-8: Deals 8 damage to target and exile) target(creature,planeswalker) transforms((,newability[exiledeath],newability[damage:8])) ueot
auto={C(0/0,-9,Loyalty)}:name(-9: Deals 9 damage to target and exile) target(creature,planeswalker) transforms((,newability[exiledeath],newability[damage:9])) ueot
auto={C(0/0,-10,Loyalty)}:name(-10: Deals 10 damage to target and exile) target(creature,planeswalker) transforms((,newability[exiledeath],newability[damage:10])) ueot
auto={C(0/0,-11,Loyalty)}:name(-11: Deals 11 damage to target and exile) target(creature,planeswalker) transforms((,newability[exiledeath],newability[damage:11])) ueot
auto={C(0/0,-12,Loyalty)}:name(-12: Deals 12 damage to target and exile) target(creature,planeswalker) transforms((,newability[exiledeath],newability[damage:12])) ueot
auto={C(0/0,-13,Loyalty)}:name(-13: Deals 13 damage to target and exile) target(creature,planeswalker) transforms((,newability[exiledeath],newability[damage:13])) ueot
auto={C(0/0,-14,Loyalty)}:name(-14: Deals 14 damage to target and exile) target(creature,planeswalker) transforms((,newability[exiledeath],newability[damage:14])) ueot
auto={C(0/0,-15,Loyalty)}:name(-15: Deals 15 damage to target and exile) target(creature,planeswalker) transforms((,newability[exiledeath],newability[damage:15])) ueot
auto={C(0/0,-16,Loyalty)}:name(-16: Deals 16 damage to target and exile) target(creature,planeswalker) transforms((,newability[exiledeath],newability[damage:16])) ueot
auto={C(0/0,-17,Loyalty)}:name(-17: Deals 17 damage to target and exile) target(creature,planeswalker) transforms((,newability[exiledeath],newability[damage:17])) ueot
auto={C(0/0,-18,Loyalty)}:name(-18: Deals 18 damage to target and exile) target(creature,planeswalker) transforms((,newability[exiledeath],newability[damage:18])) ueot
auto={C(0/0,-19,Loyalty)}:name(-19: Deals 19 damage to target and exile) target(creature,planeswalker) transforms((,newability[exiledeath],newability[damage:19])) ueot
auto={C(0/0,-20,Loyalty)}:name(-20: Deals 20 damage to target and exile) target(creature,planeswalker) transforms((,newability[exiledeath],newability[damage:20])) ueot
text=This spell can't be countered. -- +2: Each opponent gets an emblem with "At the beginning of your upkeep, this emblem deals 1 damage to you." -- -3: Chandra, Awakened Inferno deals 3 damage to each non-Elemental creature. -- -X: Chandra, Awakened Inferno deals X damage to target creature or planeswalker. If a permanent dealt damage this way would die this turn, exile it instead.
mana={4}{R}{R}
type=Legendary Planeswalker
@@ -460,9 +479,9 @@ subtype=Chandra
[card]
name=Chandra, Flame's Fury
auto=counter(0/0,4,loyalty)
auto={C(0/0,1,Loyalty)}:name(+1: Deals 2 damage to any target) ability$!name(Choose one) choice name(Damage player) damage:2 target(player) _ choice name(Damage creature) damage:2 target(creature) _ choice name(Damage planeswalker) damage:2 target(planeswalker)!$ controller
auto={C(0/0,1,Loyalty)}:name(+1: Deals 2 damage to any target) damage:2 target(player,creature,planeswalker)
auto={C(0/0,-2,Loyalty)}:name(-2: Deals 4 to creature and 2 to its controller) damage:4 target(creature) && damage:2 targetController
auto={C(0/0,-8,Loyalty)}:name(-8: Deals 10 damage to creatures and opponent) damage:10 target(player) && damage:10 targetController && damage:10 all(creature|targetedpersonsbattlefield)
auto={C(0/0,-8,Loyalty)}:name(-8: Deals 10 damage to target player and his creatures) damage:10 target(player) && damage:10 all(creature|targetedpersonsbattlefield)
text=+1: Chandra, Flame's Fury deals 2 damage to any target. -- -2: Chandra, Flame's Fury deals 4 damage to target creature and 2 damage to that creature's controller. -- -8: Chandra, Flame's Fury deals 10 damage to target player and each creature that player controls.
mana={4}{R}{R}
type=Legendary Planeswalker
@@ -472,7 +491,7 @@ subtype=Chandra
name=Chandra, Gremlin Wrangler
auto=counter(0/0,3,loyalty)
auto={C(0/0,1,Loyalty)}:name(+1: Create a 2/2 red Gremlin creature token) token(Gremlin,Creature Gremlin,2/2,red)
auto={C(0/0,-2,Loyalty)}:name(-2: Deals X damage to any target... ) ability$!name(Choose one) choice name(Damage player) damage:type:creature[Gremlin]|myBattlefield target(player) _ choice name(Damage creature) damage:type:creature[Gremlin]|myBattlefield target(creature) _ choice name(Damage planeswalker) damage:type:creature[Gremlin]|myBattlefield target(planeswalker)!$ controller
auto={C(0/0,-2,Loyalty)}:name(-2: Deals X damage to any target... ) damage:damage:type:creature[Gremlin]|myBattlefield target(player,creature,planeswalker)
text=+1: Create a 2/2 red Gremlin creature token. -- -2: Chandra, Gremlin Wrangler deals X damage to any target, where X is the number of Gremlins you control.
mana={2}{R}{R}
type=Legendary Planeswalker
@@ -483,7 +502,7 @@ name=Chandra, Heart of Fire
aicode=activate moveto(exile) target(<anyamount>*[instant;sorcery;red]|myLibrary,myGraveyard) and!( canplayfromexile )!
auto=counter(0/0,5,loyalty)
auto={C(0/0,1,Loyalty)}:name(+1: Discard hand, exile three from top and cast from exile) ability$!name(Discard hand) reject all(*|myHand)!$ controller && moveTo(exile) all(*[zpos<=3]|mylibrary) && transforms((,newability[canplayfromexile])) ueot
auto={C(0/0,1,Loyalty)}:name(+1: Deals 2 damage to any target) ability$!name(Choose one) choice name(Damage player) damage:2 target(player) _ choice name(Damage creature) damage:2 target(creature) _ choice name(Damage planeswalker) damage:2 target(planeswalker)!$ controller
auto={C(0/0,1,Loyalty)}:name(+1: Deals 2 damage to any target) damage:2 target(player,creature,planeswalker)
auto={C(0/0,-9,Loyalty)}:name(-9: Search instants or sorceries, exile them and add six red mana) target(<anyamount>*[instant;sorcery;red]|myLibrary,myGraveyard) moveto(exile) and!( transforms((,newability[canplayfromexile])) ueot )! && shuffle controller && add{R}{R}{R}{R}{R}{R}
text=+1: Discard your hand, then exile the top three cards of your library. Until end of turn, you may play cards exiled this way. -- +1: Chandra, Heart of Fire deals 2 damage to any target. -- 9: Search your graveyard and library for any number of red instant and/or sorcery cards, exile them, then shuffle your library. You may cast them this turn. Add six {R}.
mana={3}{R}{R}
@@ -493,7 +512,7 @@ subtype=Chandra
[card]
name=Chandra Nalaar
auto=counter(0/0,6,loyalty)
auto={C(0/0,1,Loyalty)}:name(+1: Deals 1 damage to player or planeswalker) ability$!name(Choose one) choice name(Damage player) damage:1 target(player) _ choice name(Damage planeswalker) damage:1 target(planeswalker)!$ controller
auto={C(0/0,1,Loyalty)}:name(+1: Deals 1 damage to player or planeswalker) damage:1 target(player,planeswalker)
auto={C(0/0,-1,Loyalty)}:name(-1: Deals 1 damage to creature) damage:1 target(creature)
auto={C(0/0,-2,Loyalty)}:name(-2: Deals 2 damage to creature) damage:2 target(creature)
auto={C(0/0,-3,Loyalty)}:name(-3: Deals 3 damage to creature) damage:3 target(creature)
@@ -503,7 +522,7 @@ auto={C(0/0,-6,Loyalty)}:name(-6: Deals 6 damage to creature) damage:6 target(cr
auto={C(0/0,-7,Loyalty)}:name(-7: Deals 7 damage to creature) damage:7 target(creature)
auto={C(0/0,-8,Loyalty)}:name(-8: Deals 8 damage to creature) damage:8 target(creature)
auto={C(0/0,-9,Loyalty)}:name(-9: Deals 9 damage to creature) damage:9 target(creature)
auto={C(0/0,-10,Loyalty)}:name(-10: Deals 10 damage to a player and all creature) damage:10 target(creature)
auto={C(0/0,-10,Loyalty)}:name(-10: Deals 10 damage to a creature) damage:10 target(creature)
auto={C(0/0,-8,Loyalty)}:name(-8: 10 Deals damage to player and all of his creatures) target(player) damage:10 && damage:10 all(creature|targetedpersonsbattlefield)
text=+1: Chandra Nalaar deals 1 damage to target player. -- -X: Chandra Nalaar deals X damage to target creature. -- -8: Chandra Nalaar deals 10 damage to target player and each creature he or she controls.
mana={3}{R}{R}
@@ -515,7 +534,7 @@ name=Chandra, Novice Pyromancer
auto=counter(0/0,5,loyalty)
auto={C(0/0,1,Loyalty)}:name(+1: Elemental creatures gets +2/+0) all(creature[elemental]|mybattlefield) 2/0 ueot
auto={C(0/0,-1,Loyalty)}:name(-1: Add two red mana) add {R}{R}
auto={C(0/0,-2,Loyalty)}:name(-2: Deals 2 damage to any target) ability$!name(Choose one) choice name(Damage player) damage:2 target(player) _ choice name(Damage creature) damage:2 target(creature) _ choice name(Damage planeswalker) damage:2 target(planeswalker)!$ controller
auto={C(0/0,-2,Loyalty)}:name(-2: Deals 2 damage to any target) damage:2 target(player,creature,planeswalker)
text=+1: Elementals you control get +2/+0 until end of turn. -- -1: Add {R}{R}. -- -2: Chandra, Novice Pyromancer deals 2 damage to any target.
mana={3}{R}
type=Legendary Planeswalker
@@ -547,7 +566,7 @@ subtype=Chandra
[card]
name=Chandra, Roaring Flame
auto=counter(0/0.4.loyalty)
auto={C(0/0,1,Loyalty)}:name(+1: Deals 2 damage to player or planeswalker) ability$!name(Choose one) choice name(Damage player) damage:2 target(player) _ choice name(Damage planeswalker) damage:2 target(planeswalker)!$ controller
auto={C(0/0,1,Loyalty)}:name(+1: Deals 2 damage to player or planeswalker) damage:2 target(player,planeswalker)
auto={C(0/0,-2,Loyalty)}:name(-2: Deals 2 damage to creature) damage:2 target(creature)
auto={C(0/0,-7,Loyalty)}:name(-7: Deals 6 damage with Emblem) damage:6 opponent && emblem transforms((,newability[@each opponent upkeep:damage:3 opponent])) forever dontremove
text=+1: Chandra, Roaring Flame deals 2 damage to target player or planeswalker. -- 2: Chandra, Roaring Flame deals 2 damage to target creature. -- 7: Chandra, Roaring Flame deals 6 damage to each opponent. Each player dealt damage this way gets an emblem with “At the beginning of your upkeep, this emblem deals 3 damage to you.”
@@ -558,7 +577,7 @@ color=red
[card]
name=Chandra, the Firebrand
auto=counter(0/0,3,loyalty)
auto={C(0/0,1,Loyalty)}:name(+1: Deals 1 damage to any target) ability$!name(Choose one) choice name(Damage player) damage:1 target(player) _ choice name(Damage creature) damage:1 target(creature) _ choice name(Damage planeswalker) damage:1 target(planeswalker)!$ controller
auto={C(0/0,1,Loyalty)}:name(+1: Deals 1 damage to any target) damage:1 target(player,creature,planeswalker)
auto={C(0/0,-2,Loyalty)}:name(-2: When cast instant or sorcery, copy spell) emblem transforms((,newability[@moveTo(*[instant;sorcery]|myStack):castcard(copied noevent) target(*[instant;sorcery]|mystack)])) oneshot ueot
auto={C(0/0,-6,Loyalty)}:name(-6: Deals 6 damage up to six targets) ability$!name(Choose one) choice name(Damage opponent and five creature) damage:6 opponent && damage:6 target(<upto:5>creature) _ choice name(Damage controller and five creature) damage:6 controller && damage:6 target(<upto:5>creature) _ choice name(Damage creature) damage:6 target(<upto:6>creature)!$ controller
text=+1: Chandra, the Firebrand deals 1 damage to any target. -- -2: When you cast your next instant or sorcery spell this turn, copy that spell. You may choose new targets for the copy. -- -6: Chandra, the Firebrand deals 6 damage to each of up to six target creatures and/or players.
@@ -572,7 +591,7 @@ auto=counter(0/0,4,loyalty)
auto={C(0/0,1,Loyalty)}:name(+1: Exile Top Card) reveal:1 optionone target(*|reveal) moveto(exile) and!( becomes(tobecast) ueot )! optiononeend afterrevealed if type(tobecast[-land]|myexile)~morethan~0 then transforms((,newability[choice all(tobecast|myexile) castcard(restricted),newability[choice name(deal 2 damage) damage:2 opponent && all(tobecast|myexile) moveto(ownerexile)])) oneshot else choice name(deal 2 damage) damage:2 opponent && all(tobecast|myexile) moveto(ownerexile) afterrevealedend revealend
auto={C(0/0,1,Loyalty)}:name(+1: Add {R}{R} Mana) Add{R}{R}
auto={C(0/0,-3,Loyalty)}:name(-3: Deals 4 damage to target creature) damage:4 target(creature)
auto={C(0/0,-7,Loyalty)}:name(-7: Emblem: "whenever cast a spell, deals 5 damage any target) emblem transforms((,newability[@movedTo(*|mystack):ability$!name(Choose one) choice name(Damage player) damage:5 target(player) _ choice name(Damage creature) damage:5 target(creature) _ choice name(Damage planeswalker) damage:5 target(planeswalker)!$ controller])) forever dontremove
auto={C(0/0,-7,Loyalty)}:name(-7: Emblem: "whenever cast a spell, deals 5 damage any target) emblem transforms((,newability[@movedTo(*|mystack):damage:5 target(player,creature,planeswalker)])) forever dontremove
text=+1: Exile the top card of your library. You may cast that card. If you don't, Chandra, Torch of Defiance deals 2 damage to each opponent. -- +1: Add {R}{R} to your mana pool. -- -3: Chandra, Torch of Defiance deals 4 damage to target creature. -- -7: You get an emblem with "Whenever you cast a spell, this emblem deals 5 damage to target creature or player."
mana={2}{R}{R}
type=Legendary Planeswalker
@@ -652,7 +671,7 @@ name=Domri, City Smasher
auto=counter(0/0,4,loyalty)
aicode=activate moveto(myHand) target(creature[zpos=2]|myLibrary)
auto={C(0/0,2,Loyalty)}:name(+2: Creatures gets +1/+1 and haste) all(creature|myBattlefield) 1/1 ueot && ability$!name(gain haste) all(creature|myBattlefield) haste ueot !$ controller
auto={C(0/0,-3,Loyalty)}:name(-3: Deals 3 damage to any target) ability$!name(Choose one) choice name(Damage player) damage:3 target(player) _ choice name(Damage creature) damage:3 target(creature) _ choice name(Damage planeswalker) damage:3 target(planeswalker)!$ controller
auto={C(0/0,-3,Loyalty)}:name(-3: Deals 3 damage to any target) damage:3 target(player,creature,planeswalker)
auto={C(0/0,-8,Loyalty)}:name(-8: Put three +1/+1 counters and trample) counter(1/1,3) all(creature|myBattlefield) && ability$!name(gain trample) all(creature|myBattlefield) trample ueot !$ controller
text=+2: Creatures you control get +1/+1 and gain haste until end of turn. -- 3: Domri, City Smasher deals 3 damage to any target. -- 8: Put three +1/+1 counters on each creature you control. Those creatures gain trample until end of turn.
mana={4}{R}{G}
@@ -1275,7 +1294,7 @@ name=Jaya Ballard
auto=counter(0/0,5,Loyalty)
auto={C(0/0,1,Loyalty)}:name(+1: Add {R}{R}{R}) if type(*[instant;sorcery]|myhand)~morethan~0 then add{R}{R}{R}
auto={C(0/0,1,Loyalty)}:name(+1: Discard up to three and draw that many) reject notatarget(<upto:3>*|myhand) and!( draw:1 controller )!
auto={C(0/0,-8,Loyalty)}:name(-8: Emblem: "Yoy may cast instants or sorceries from graveyard") emblem transforms((,newability[all(*[instant;sorcery]|mygraveyard) may castcard(restricted) and!(transforms((,newability[exiledeath])) forever)!])) forever dontremove
auto={C(0/0,-8,Loyalty)}:name(-8: Emblem: "Yoy may cast instants or sorceries from graveyard") emblem transforms((,newability[lord(*[instant;sorcery]|mygraveyard) canplayfromgraveyard],newability[lord(*[instant;sorcery]|mygraveyard) gainedexiledeath])) forever dontremove
text=+1: Add {R}{R}{R}. Spend this mana only to cast instant or sorcery spells. -- +1: Discard up to three cards, then draw that many cards. -- 8: You get an emblem with “You may cast instant and sorcery spells from your graveyard. If a spell cast this way would be put into your graveyard, exile it instead.”
mana={2}{R}{R}{R}
type=Legendary Planeswalker
@@ -1286,8 +1305,8 @@ name=Jaya, Venerated Firemage
auto=counter(0/0,5,Loyalty)
auto=@damaged(*|opponentBattlefield) from(*[red]|myBattlefield,myStack,myGraveyard,mySideboard):all(trigger) damage:1
auto=@damaged(opponent) from(*[red]|myBattlefield,myStack,myGraveyard,mySideboard):damage:1 opponent
auto={C(0/0,-2,Loyalty)}:name(-2: Deals 2 damage to any target) ability$!name(Choose one) choice name(Damage player) damage:2 target(player) _ choice name(Damage creature) damage:2 target(creature) _ choice name(Damage planeswalker) damage:2 target(planeswalker)!$ controller
text=If another red source you control would deal damage to a permanent or player, it deals that much damage plus 1 to that permanent or player instead. / 2: Jaya, Venerated Firemage deals 2 damage to any target.
auto={C(0/0,-2,Loyalty)}:name(-2: Deals 2 damage to any target) damage:2 target(player,creature,planeswalker)
text=If another red source you control would deal damage to a permanent or player, it deals that much damage plus 1 to that permanent or player instead. -- 2: Jaya, Venerated Firemage deals 2 damage to any target.
mana={2}{R}{R}{R}
type=Legendary Planeswalker
subtype=Jaya
@@ -1709,7 +1728,7 @@ auto=counter(0/0,4,Loyalty)
auto={C(0/0,1,Loyalty)}:name(+1: Gain 2 life and produce mana) life:2 controller && ability$!choice add{U} _ choice add{R} _ choice add{W}!$ controller
auto={C(0/0,-2,Loyalty)}:name(-2: Draw and may discard land) draw:1 controller && ability$!name(May discard a land) may target(*[land]|myhand) reject!$ controller
auto={C(0/0,-2,Loyalty)}{D(*[-land]|myhand)}:name(-2: Draw, discard nonland and damage) draw:1 controller && damage:storedmanacost target(creature;planeswalker)
auto={C(0/0,-6,Loyalty)}:name(-6: Emblem: Cast a noncreature spell and deals 2 damage) emblem transforms((,newability[@movedTo(*[-creature]|mystack):ability$!name(2 damages to player) choice name(2 damages to player) damage:2 target(player) _ choice name(2 damages to planeswalker) damage:2 target(planeswalker) _ choice name(2 damages to creature) damage:2 target(creature) !$ controller])) forever dontremove
auto={C(0/0,-6,Loyalty)}:name(-6: Emblem: Cast a noncreature spell and deals 2 damage) emblem transforms((,newability[@movedTo(*[-creature]|mystack):damage:2 target(player,creature,planeswalker)])) forever dontremove
text=+1: You gain 2 life. Add {U}, {R}, or {W}. Spend this mana only to cast a noncreature spell. -- -2: Draw a card, then you may discard a card. When you discard a nonland card this way, Narset of the Ancient Way deals damage equal to that card's converted mana cost to target creature or planeswalker. -- -6: You get an emblem with "Whenever you cast a noncreature spell, this emblem deals 2 damage to any target."
mana={1}{U}{R}{W}
type=Legendary Planeswalker
@@ -1729,9 +1748,11 @@ subtype=Narset
name=Narset Transcendent
auto=counter(0/0,6,loyalty)
aicode=activate target(*[-creature;-land;zpos=1]|mylibrary) moveto(myhand)
auto={C(0/0,1,Loyalty)}:name(+1: Look at the top noncreature nonland) name(look) reveal:1 optionone if type(*[-creature;-land]|reveal)~morethan~0 then target(*|reveal) moveTo(myHand) optiononeend optiontwo name(Put Back On Top) target(<1>*|reveal) moveTo(myLibrary) optiontwoend revealend
auto={C(0/0,-2,Loyalty)}:name(-2: Your next instant or sorcery has rebound) emblem transforms((,newability[@movedTo(*[instant;sorcery]|myStack):all(trigger[from]) phaseaction[next upkeep once] may castcard(normal) && exiledeath])) ueot oneshot
auto={C(0/0,1,Loyalty)}:name(+1: Look at the top noncreature nonland) reveal:1 optionone target(<upto:1>*[-creature;-land]|reveal) moveTo(myHand) optiononeend optiontwo name(Put Back On Top) target(<1>*|reveal) moveTo(myLibrary) optiontwoend revealend
auto={C(0/0,-2,Loyalty)}:name(-2: Your next instant or sorcery has rebound) counter(0/0.1.ReboundActive) all(this)
auto={C(0/0,-9,Loyalty)}:name(-9: Emblem: "Your opponents can't cast noncreature spells") emblem transforms((,newability[maxCast(*[-creature])0 opponent])) forever dontremove
auto=@movedTo(*[instant;sorcery]|myStack):this(counter{0/0.1.ReboundActive}>=1) all(trigger[to]) transforms((,newability[gainedexiledeath],newability[phaseaction[my upkeep once] counter(0/0.1.PlayExile)])) ueot && counter(0/0.-1.ReboundActive) all(this)
auto=@each my upkeep:if type(*[instant;sorcery;counter{0/0.1.PlayExile}]|myexile)~morethan~0 then ability$!name(Choose one) choice name(Cast card from exile) activate castcard(normal) target(*[instant;sorcery;counter{0/0.1.PlayExile}]|myexile) _ choice name(Don't cast card from exile) all(*[instant;sorcery;counter{0/0.1.PlayExile}]|myexile) counter(0/0.-1.PlayExile)!$ controller
text=+1: Look at the top card of your library. If its a noncreature, nonland card, you may reveal it and put it into your hand. -- 2: When you cast your next instant or sorcery spell from your hand this turn, it gains rebound. (Exile the spell as it resolves. At the beginning of your next upkeep, you may cast that card from exile without paying its mana cost.) -- 9: You get an emblem with “Your opponents cant cast noncreature spells.”
mana={2}{W}{U}
type=Legendary Planeswalker
@@ -1969,7 +1990,7 @@ subtype=Oko
name=Ral, Caller of Storms
auto=counter(0/0,4,loyalty)
auto={C(0/0,1,Loyalty)}:name(+1: Draw a card) draw:1
auto={C(0/0,-2,Loyalty)}:name(-2: Deals 3 damage divided to any target) damage:1 target(creature,player,planeswalker) && ability$!damage:1 target(creature,player,planeswalker)!$ controller && ability$!damage:1 target(creature,player,planeswalker)!$ controller
auto={C(0/0,-2,Loyalty)}:name(-2: Deals 3 damage divided to any target) thisforeach(variable{3}) ability$!name(Deals 1 damage) name(Deals 1 damage) damage:1 target(player,creature,planeswalker)!$ controller
auto={C(0/0,-7,Loyalty)}:name(-7: Draw 7 cards and deals 7 to each creature) draw:7 controller && damage:7 all(creature|opponentBattlefield)
text=+1: Draw a card. -- -2: Ral, Caller of Storms deals 3 damage divided as you choose among one, two, or three targets. -- -7: Draw seven cards. Ral, Caller of Storms deals 7 damage to each creature your opponents control.
mana={4}{U}{R}
@@ -1982,7 +2003,7 @@ auto=counter(0/0,4,loyalty)
aicode=activate transforms((,newability[choice all(*[zpos=2]|mylibrary) moveto(myhand) and!(deplete:1)!],newability[choice all(*[zpos=1]|mylibrary) moveto(myhand) and!(deplete:1)!])) ueot
auto={C(0/0,1,Loyalty)}:name(+1: Look the top two, put one in hand other graveyard) name(look) reveal:2 optionone name(Get a card) target(<1>*|reveal) moveto(myhand) optiononeend optiontwo all(*|reveal) moveto(mygraveyard) optiontwoend revealend
auto={C(0/0,-3,Loyalty)}:name(-3: Deals damage for each instant and sorcery) damage:type:*[instant;sorcery]:myExile target(creature) && ability$!name(Damage) damage:type:*[instant;sorcery]:myGraveyard targete(creature)!$ conroller
auto={C(0/0,-8,Loyalty)}:name(-8: Emblem: "Whenever cast spell, deals 4 damage, draw two cards") emblem transforms((,newability[@movedTo(*[instant;sorcery]|myStack):draw:2 controller && ability$!name(Choose one) choice name(Damage Player) damage:4 target(player) _ choice name(Damage Creature) damage:4 target(creature) _ choice name(Damage Planeswalker) damage:4 target(planeswalker)!$ controller])) forever dontremove
auto={C(0/0,-8,Loyalty)}:name(-8: Emblem: "Whenever cast spell, deals 4 damage, draw two cards") emblem transforms((,newability[@movedTo(*[instant;sorcery]|myStack):draw:2 controller && damage:4 target(player,creature,planeswalker)])) forever dontremove
text=+1: Look at the top two cards of your library. Put one of them into your hand and the other into your graveyard. -- 3: Ral, Izzet Viceroy deals damage to target creature equal to the total number of instant and sorcery cards you own in exile and in your graveyard. -- 8: You get an emblem with “Whenever you cast an instant or sorcery spell, this emblem deals 4 damage to any target and you draw two cards.”
mana={3}{U}{R}
type=Legendary Planeswalker
@@ -2003,7 +2024,7 @@ subtype=Ral
name=Ral Zarek
auto=counter(0/0,4,loyalty)
auto={C(0/0,1,Loyalty)}:name(+1: Tap and untap other permanent) tap(noevent) target(*) && ability$!untap target(other *)!$ controller
auto={C(0/0,-2,Loyalty)}:name(-2: Deals 3 damage to any target) ability$!name(Choose one) choice name(Damage player) damage:3 target(player) _ choice name(Damage creature) damage:3 target(creature) _ choice name(Damage planeswalker) damage:3 target(planeswalker)!$ controller
auto={C(0/0,-2,Loyalty)}:name(-2: Deals 3 damage to any target) damage:3 target(player,creature,planeswalker)
auto={C(0/0,-7,Loyalty)}:name(-7: Flip five coins and take an extra turn for each head) flipacoin winability turns:+1 controller winabilityend flipend && flipacoin winability turns:+1 controller winabilityend flipend && flipacoin winability turns:+1 controller winabilityend flipend && flipacoin winability turns:+1 controller winabilityend flipend && flipacoin winability turns:+1 controller winabilityend flipend
text=+1: Tap target permanent, then untap another target permanent. -- -2: Ral Zarek deals 3 damage to target creature or player. -- -7: Flip five coins. Take an extra turn after this one for each coin that comes up heads.
mana={2}{U}{R}
@@ -2208,7 +2229,7 @@ subtype=Sorin
name=Sorin, Imperious Bloodlord
auto=counter(0/0,4,loyalty)
auto={C(0/0,1,Loyalty)}:name(+1: Deathtouch and Lifelink) target(creature|myBattlefield) deathtouch ueot && lifelink ueot && restriction{type(creature[vampire]) counter(1/1)
auto={C(0/0,1,Loyalty)}{S(vampire|myBattlefield)}:name(+1: Sacrifice and deals 3 damage) ability$!name(Choose one) choice name(Damage player) damage:3 target(player) _ choice name(Damage creature) damage:3 target(creature) _ choice name(Damage planeswalker) damage:3 target(planeswalker)!$ controller
auto={C(0/0,1,Loyalty)}{S(vampire|myBattlefield)}:name(+1: Sacrifice and deals 3 damage) damage:3 target(player,creature,planeswalker)
auto={C(0/0,-3,Loyalty)}:name(-3: Put a Vampire from your hand onto the battlefield) moveto(myBattlefield) target(creature[vampire]|myHand)
text=+1: Target creature you control gains deathtouch and lifelink until end of turn. If it's a Vampire, put a +1/+1 counter on it. -- +1: You may sacrifice a Vampire. When you do, Sorin, Imperious Bloodlord deals 3 damage to any target and you gain 3 life. -- -3: You may put a Vampire creature card from your hand onto the battlefield.
mana={2}{B}
@@ -2229,7 +2250,7 @@ subtype=Sorin
[card]
name=Sorin Markov
auto=counter(0/0,4,loyalty)
auto={C(0/0,2,Loyalty)}:name(+2: deals 2 damage to a creature and gain life...) damage:2 target(creature,player,planeswalker) && life:2 controller
auto={C(0/0,2,Loyalty)}:name(+2: deals 2 damage to a creature and gain life...) damage:2 target(player,creature,planeswalker) && life:2 controller
auto={C(0/0,-3,Loyalty)}:name(-3: Target opponent's life total becomes 10) lifeset:10 opponent
auto={C(0/0,-7,Loyalty)}:name(-7: you control target player -'Loses turn'-) turns:-1 opponent
text=+2: Sorin Markov deals 2 damage to any target and you gain 2 life. -- -3: Target opponents life total becomes 10. -- -7: You control target player during that players next turn.
@@ -2252,8 +2273,8 @@ subtype=Sorin
name=Sorin, Vampire Lord
auto=counter(0/0,4,loyalty)
auto={C(0/0,1,Loyalty)}:name(+1: Creature gets +2/+1) target(creature) 2/0 ueot
auto={C(0/0,-2,Loyalty)}:name(-2: Deals 4 damage and gains 4 life) ability$!name(Choose one) choice name(Damage player) damage:4 target(player) && life:4 controller _ choice name(Damage creature) damage:4 target(creature) && life:4 controller _ choice name(Damage planeswalker) damage:4 target(planeswalker) && life:4 controller!$ controller
auto={C(0/0,-8,Loyalty)}:name(-8: Vampires gain: "Gain control of a creature") all(creature[vampire]|mybattlefield) transforms((,newability[{T}:moveTo(mybattlefield) target(creature)]) ueot
auto={C(0/0,-2,Loyalty)}:name(-2: Deals 4 damage and gains 4 life) life:4 controller && damage:4 target(player,creature,planeswalker)
auto={C(0/0,-8,Loyalty)}:name(-8: Vampires gain: "Gain control of a creature") all(creature[vampire]|mybattlefield) transforms((,newability[{T}:moveTo(mybattlefield) target(creature)])) ueot
text=+1: Up to one target creature gets +2/+0 until end of turn. -- -2: Sorin, Vampire Lord deals 4 damage to any target. You gain 4 life. -- -8: Until end of turn, each Vampire you control gains " {T}: Gain control of target creature."
mana={4}{B}{B}
type=Legendary Planeswalker
@@ -2543,7 +2564,7 @@ type=Legendary Planeswalker
name=Tibalt, Rakish Instigator
auto=counter(0/0,5,loyalty)
abilities=nolifegainopponent
auto={C(0/0,-2,Loyalty)}:name(-2: Create a 1/1 Devil) create(Devil:Creature Devil:1/1:red) and!( transforms((,newability[@movedto(this|mygraveyard):ability$!name(Choose one) choice name(Damage player) damage:1 target(player) _ choice name(Damage creature) damage:1 target(creature) _ choice name(Damage planeswalker) damage:1 target(planeswalker)!$ controller])) forever )!
auto={C(0/0,-2,Loyalty)}:name(-2: Create a 1/1 Devil) token(Devil,Creature Devil,1/1,red) and!( transforms((,newability[@movedto(this|mygraveyard):damage:1 target(player,creature,planeswalker)])) forever )!
text=Your opponents can't gain life. -- -2: Create a 1/1 red Devil creature token with "Whenever this creature dies, it deals 1 damage to any target."
mana={2}{R}
type=Legendary Planeswalker
@@ -2574,7 +2595,7 @@ subtype=Ugin
[card]
name=Ugin, the Spirit Dragon
auto=counter(0/0,7,loyalty)
auto={C(0/0,2,Loyalty)}:name(+2: Deals 3 damage to target creature or player) ability$!name(Choose one) choice name(Damage player) damage:3 target(player) && life:3 controller _ choice name(Damage creature) damage:3 target(creature) && life:3 controller!$ controller
auto={C(0/0,2,Loyalty)}:name(+2: Deals 3 damage to target creature or player) damage:3 target(player,creature)
auto={C(0/0,-0,Loyalty)}:name(-0: Exile each permanent with mana cost 0) moveto(exile) all(*[white;blue;black;red;green;manacost<=0])
auto={C(0/0,-1,Loyalty)}:name(-1: Exile each permanent with mana cost 1) moveto(exile) all(*[white;blue;black;red;green;manacost<=1])
auto={C(0/0,-2,Loyalty)}:name(-2: Exile each permanent with mana cost 2) moveto(exile) all(*[white;blue;black;red;green;manacost<=2])
@@ -2762,7 +2783,7 @@ subtype=Will
name=Wrenn and Six
auto=counter(0/0,3,loyalty)
auto={C(0/0,1,Loyalty)}:name(+1: Return target land from graveyard) moveTo(myHand) target(<upto:1>*[land]|myGraveyard)
auto={C(0/0,-1,Loyalty)}name(-1: Deals 1 damage to any target) ability$!name(Choose one) choice name(Damage player) damage:1 target(player) _ choice name(Damage creature) damage:1 target(creature) _ choice name(Damage planeswalker) damage:1 target(planeswalker)!$ controller
auto={C(0/0,-1,Loyalty)}name(-1: Deals 1 damage to any target) damage:1 target(player,creature,planeswalker)
auto={C(0/0,-7,Loyalty)}:name(-7: Emblem: Instants and Sorceries have Retrace) emblem transforms((,newability[lord(*[instant;sorcery]|myGraveyard) retrace])) forever dontremove
text=+1: Return up to one target land card from your graveyard to your hand. -- -1: Wrenn and Six deals 1 damage to any target. -- -7: You get an emblem with "Instant and sorcery cards in your graveyard have retrace." (You may cast instant and sorcery cards from your graveyard by discarding a land card in addition to paying their other costs.)
mana={R}{G}