Added/fixed primitives, updated the "missing_cards_by_sets" folder, fixed several crash on Commander Format, fixed a possible crash using "and!()!" with "imprint", added a new macros "_REBOUND_" and "_GOAD_" related to rebound and goad abilities and refactored all cards using them, implemented a new keywords "haunt", "hasprey", "preyname" and "isprey" related the haunting ability and improved all cards using it, Added "commander" and "\*" to HINT castpriority for AI decks in order to allow the user to give a cast priority to commanders.
This commit is contained in:
@@ -6104,8 +6104,7 @@ type=Sorcery
|
||||
name=Artful Maneuver
|
||||
target=creature
|
||||
auto=2/2 ueot
|
||||
auto=if rebound then ability$!moveto(exile) all(Artful Maneuver|mystack)!$ controller
|
||||
autoexile=@rebounded:may activate castcard(normal)
|
||||
auto=_REBOUND_
|
||||
text=Target creature gets +2/+2 until end of turn. -- Rebound (If you cast this spell from your hand, exile it as it resolves. At the beginning of your next upkeep, you may cast this card from exile without paying its mana cost.)
|
||||
mana={1}{W}
|
||||
type=Instant
|
||||
@@ -18184,8 +18183,7 @@ auto=choice name(red) transforms((,newability[protection from red])) ueot
|
||||
auto=choice name(blue) transforms((,newability[protection from blue])) ueot
|
||||
auto=choice name(black) transforms((,newability[protection from black])) ueot
|
||||
auto=choice name(white) transforms((,newability[protection from white])) ueot
|
||||
auto=if rebound then ability$!moveto(exile) all(Center Soul|mystack)!$ controller
|
||||
autoexile=@rebounded:may activate castcard(normal)
|
||||
auto=_REBOUND_
|
||||
text=Target creature you control gains protection from the color of your choice until end of turn. -- Rebound (If you cast this spell from your hand, exile it as it resolves. At the beginning of your next upkeep, you may cast this card from exile without paying its mana cost.)
|
||||
mana={1}{W}
|
||||
type=Instant
|
||||
@@ -22106,8 +22104,7 @@ type=Instant
|
||||
name=Consuming Vapors
|
||||
target=player
|
||||
auto=ability$! notatarget(creature|mybattlefield) dynamicability<!mytgt toughnesslifegain abilitycontroller!> sacrifice ) !$ targetedplayer
|
||||
auto=if rebound then ability$!moveto(exile) all(Consuming Vapors|mystack)!$ controller
|
||||
autoexile=@rebounded:may activate castcard(normal)
|
||||
auto=_REBOUND_
|
||||
text=Target player sacrifices a creature. You gain life equal to that creature's toughness. -- Rebound (If you cast this spell from your hand, exile it as it resolves. At the beginning of your next upkeep, you may cast this card from exile without paying its mana cost.)
|
||||
mana={3}{B}
|
||||
type=Sorcery
|
||||
@@ -30214,8 +30211,7 @@ name=Distortion Strike
|
||||
target=creature
|
||||
auto=1/0 ueot
|
||||
auto=unblockable ueot
|
||||
auto=if rebound then ability$!moveto(exile) all(Distortion Strike|mystack)!$ controller
|
||||
autoexile=@rebounded:may activate castcard(normal)
|
||||
auto=_REBOUND_
|
||||
text=Target creature gets +1/+0 until end of turn and is unblockable this turn. -- Rebound (If you cast this spell from your hand, exile it as it resolves. At the beginning of your next upkeep, you may cast this card from exile without paying its mana cost.)
|
||||
mana={U}
|
||||
type=Sorcery
|
||||
@@ -35460,8 +35456,7 @@ auto=choice name(red) transforms((,newability[protection from red])) ueot
|
||||
auto=choice name(blue) transforms((,newability[protection from blue])) ueot
|
||||
auto=choice name(black) transforms((,newability[protection from black])) ueot
|
||||
auto=choice name(white) transforms((,newability[protection from white])) ueot
|
||||
auto=if rebound then ability$!moveto(exile) all(Emerge Unscathed|mystack)!$ controller
|
||||
autoexile=@rebounded:may activate castcard(normal)
|
||||
auto=_REBOUND_
|
||||
text=Target creature you control gains protection from the color of your choice until end of turn. -- Rebound (If you cast this spell from your hand, exile it as it resolves. At the beginning of your next upkeep, you may cast this card from exile without paying its mana cost.)
|
||||
mana={W}
|
||||
type=Instant
|
||||
@@ -49859,8 +49854,7 @@ toughness=3
|
||||
[card]
|
||||
name=Great Teacher's Decree
|
||||
auto=all(creature|mybattlefield) 2/1 ueot
|
||||
auto=if rebound then ability$!moveto(exile) all(Great Teacher's Decree|mystack)!$ controller
|
||||
autoexile=@rebounded:may activate castcard(normal)
|
||||
auto=_REBOUND_
|
||||
text=Creatures you control get +2/+1 until end of turn. -- Rebound (If you cast this spell from your hand, exile it as it resolves. At the beginning of your next upkeep, you may cast this card from exile without paying its mana cost.)
|
||||
mana={3}{W}
|
||||
type=Sorcery
|
||||
@@ -80530,8 +80524,7 @@ toughness=2
|
||||
[card]
|
||||
name=Nomads' Assembly
|
||||
auto=token(Kor Soldier,Creature Kor Soldier,1/1,white)*type:creature:mybattlefield
|
||||
auto=if rebound then ability$!moveto(exile) all(Nomads' Assembly|mystack)!$ controller
|
||||
autoexile=@rebounded:may activate castcard(normal)
|
||||
auto=_REBOUND_
|
||||
text=Put a 1/1 white Kor Soldier creature token onto the battlefield for each creature you control. -- Rebound (If you cast this spell from your hand, exile it as it resolves. At the beginning of your next upkeep, you may cast this card from exile without paying its mana cost.)
|
||||
mana={4}{W}{W}
|
||||
type=Sorcery
|
||||
@@ -81906,17 +81899,15 @@ toughness=6
|
||||
name=Ojutai's Breath
|
||||
target=creature
|
||||
auto=freeze
|
||||
auto=if rebound then ability$!moveto(exile) all(Ojutai's Breath|mystack)!$ controller
|
||||
autoexile=@rebounded:may activate castcard(normal)
|
||||
auto=_REBOUND_
|
||||
text=Tap target creature. It doesn't untap during its controller's next untap step. -- Rebound (If you cast this spell from your hand, exile it as it resolves. At the beginning of your next upkeep, you may cast this card from exile without paying its mana cost.)
|
||||
mana={2}{U}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
name=Ojutai's Summons
|
||||
auto=create(Djinn Monk:Creature Djinn Monk:2/2:flying:blue)
|
||||
auto=if rebound then ability$!moveto(exile) all(Ojutai's Summons|mystack)!$ controller
|
||||
autoexile=@rebounded:may activate castcard(normal)
|
||||
auto=token(Djinn Monk,Creature Djinn Monk,2/2,flying,blue)
|
||||
auto=_REBOUND_
|
||||
text=Put a 2/2 blue Djinn Monk creature token with flying onto the battlefield. -- Rebound (If you cast this spell from your hand, exile it as it resolves. At the beginning of your next upkeep, you may cast this card from exile without paying its mana cost.)
|
||||
mana={3}{U}{U}
|
||||
type=Sorcery
|
||||
@@ -88191,8 +88182,7 @@ type=Sorcery
|
||||
name=Prey's Vengeance
|
||||
target=creature
|
||||
auto=2/2
|
||||
auto=if rebound then ability$!moveto(exile) all(Prey's Vengeance|mystack)!$ controller
|
||||
autoexile=@rebounded:may activate castcard(normal)
|
||||
auto=_REBOUND_
|
||||
text=Target creature gets +2/+2 until end of turn. -- Rebound (If you cast this spell from your hand, exile it as it resolves. At the beginning of your next upkeep, you may cast this card from exile without paying its mana cost.)
|
||||
mana={G}
|
||||
type=Instant
|
||||
@@ -88949,8 +88939,7 @@ type=Sorcery
|
||||
name=Profound Journey
|
||||
target=*[-instant;-sorcery]|mygraveyard
|
||||
auto=moveto(ownerbattlefield)
|
||||
auto=if rebound then ability$!moveto(exile) all(Profound Journey|mystack)!$ controller
|
||||
autoexile=@rebounded:may activate castcard(normal)
|
||||
auto=_REBOUND_
|
||||
text=Return target permanent card from your graveyard to the battlefield. -- Rebound (If you cast this spell from your hand, exile it as it resolves. At the beginning of your next upkeep, you may cast this card from exile without paying its mana cost.)
|
||||
mana={5}{W}{W}
|
||||
type=Sorcery
|
||||
@@ -93160,8 +93149,7 @@ type=Instant
|
||||
name=Recurring Insight
|
||||
target=opponent
|
||||
auto=draw:type:*:targetedpersonshand controller
|
||||
auto=if rebound then ability$!moveto(exile) all(Recurring Insight|mystack)!$ controller
|
||||
autoexile=@rebounded:may activate castcard(normal)
|
||||
auto=_REBOUND_
|
||||
text=Draw cards equal to the number of cards in target opponent's hand. -- Rebound (If you cast this spell from your hand, exile it as it resolves. At the beginning of your next upkeep, you may cast this card from exile without paying its mana cost.)
|
||||
mana={4}{U}{U}
|
||||
type=Sorcery
|
||||
@@ -105066,8 +105054,7 @@ name=Sight Beyond Sight
|
||||
abilities=hiddenface
|
||||
aicode=activate transforms((,newability[moveto(myhand) all(*[zpos=1]|mylibrary) && bottomoflibrary all(*[zpos=2]|mylibrary)])) ueot
|
||||
auto=name(look) reveal:2 optionone name(Get a card) target(<1>*|reveal) moveto(myhand) optiononeend optiontwo name(put on bottom) target(<2>*|reveal) bottomoflibrary optiontwoend revealend
|
||||
auto=if rebound then ability$!moveto(exile) all(Sight Beyond Sight|mystack)!$ controller
|
||||
autoexile=@rebounded:may activate castcard(normal)
|
||||
auto=_REBOUND_
|
||||
text=Look at the top two cards of your library. Put one of them into your hand and the other on the bottom of your library. -- Rebound (If you cast this spell from your hand, exile it as it resolves. At the beginning of your next upkeep, you may cast this card from exile without paying its mana cost.)
|
||||
mana={3}{U}
|
||||
type=Sorcery
|
||||
@@ -108207,13 +108194,14 @@ toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Smallpox
|
||||
auto=ability$!life:-1 all(player)!$ controller
|
||||
auto=ability$!reject notatarget(*|myhand)!$ controller
|
||||
auto=ability$!reject notatarget(*|myhand)!$ opponent
|
||||
auto=ability$!sacrifice notatarget(creature|mybattlefield)!$ controller
|
||||
auto=ability$!sacrifice notatarget(creature|mybattlefield)!$ opponent
|
||||
auto=ability$!sacrifice notatarget(land|mybattlefield)!$ controller
|
||||
auto=ability$!sacrifice notatarget(land|mybattlefield)!$ opponent
|
||||
auto=life:-1 controller
|
||||
auto=life:-1 opponent
|
||||
auto=ability$!name(Discard a card) name(Discard a card) target(*|myhand) reject!$ controller
|
||||
auto=ability$!name(Discard a card) name(Discard a card) target(*|myhand) reject!$ opponent
|
||||
auto=ability$!name(Sacrifice a creature) name(Sacrifice a creature) target(creature|mybattlefield) sacrifice!$ controller
|
||||
auto=ability$!name(Sacrifice a creature) name(Sacrifice a creature) target(creature|mybattlefield) sacrifice!$ opponent
|
||||
auto=ability$!name(Sacrifice a land) name(Sacrifice a land) target(land|mybattlefield) sacrifice!$ controller
|
||||
auto=ability$!name(Sacrifice a land) name(Sacrifice a land) target(land|mybattlefield) sacrifice!$ opponent
|
||||
text=Each player loses 1 life, discards a card, sacrifices a creature, then sacrifices a land.
|
||||
mana={B}{B}
|
||||
type=Sorcery
|
||||
@@ -112416,8 +112404,7 @@ toughness=0
|
||||
name=Staggershock
|
||||
target=creature,player
|
||||
auto=damage:2
|
||||
auto=if rebound then ability$!moveto(exile) all(Staggershock|mystack)!$ controller
|
||||
autoexile=@rebounded:may activate castcard(normal)
|
||||
auto=_REBOUND_
|
||||
text=Staggershock deals 2 damage to target creature or player. -- Rebound (If you cast this spell from your hand, exile it as it resolves. At the beginning of your next upkeep, you may cast this card from exile without paying its mana cost.)
|
||||
mana={2}{R}
|
||||
type=Instant
|
||||
@@ -116111,8 +116098,7 @@ toughness=1
|
||||
[card]
|
||||
name=Surreal Memoir
|
||||
auto=moverandom(instant) from(mygraveyard) to(myhand)
|
||||
auto=if rebound then ability$!moveto(exile) all(Surreal Memoir|mystack)!$ controller
|
||||
autoexile=@rebounded:may activate castcard(normal)
|
||||
auto=_REBOUND_
|
||||
text=Return an instant card at random from your graveyard to your hand. -- Rebound (If you cast this spell from your hand, exile it as it resolves. At the beginning of your next upkeep, you may cast this card from exile without paying its mana cost.)
|
||||
mana={3}{R}
|
||||
type=Sorcery
|
||||
@@ -116140,8 +116126,7 @@ type=Sorcery
|
||||
name=Survival Cache
|
||||
auto=life:2 controller
|
||||
auto=if compare(lifetotal)~morethan~compare(opponentlifetotal) then draw:1 controller
|
||||
auto=if rebound then ability$!moveto(exile) all(Survival Cache|mystack)!$ controller
|
||||
autoexile=@rebounded:may activate castcard(normal)
|
||||
auto=_REBOUND_
|
||||
text=You gain 2 life. Then if you have more life than an opponent, draw a card. -- Rebound (If you cast this spell from your hand, exile it as it resolves. At the beginning of your next upkeep, you may cast this card from exile without paying its mana cost.)
|
||||
mana={2}{W}
|
||||
type=Sorcery
|
||||
@@ -116647,8 +116632,7 @@ subtype=Equipment
|
||||
name=Sword of the Animist
|
||||
auto={2}:equip
|
||||
auto=teach(creature) 1/1
|
||||
aicode=activate moveTo(myBattlefield) and!(tap(noevent))! target(land[basic]|myLibrary)
|
||||
auto=@combat(attacking) source(mytgt):name(search card) reveal:plibrarycount optionone name(choose card) target(land[basic]|reveal) moveto(ownerlibrary) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put back) target(<1>*|reveal) moveto(ownerlibrary) and!( all(*|reveal) moveto(ownerlibrary) and!(shuffle)! )! optiontwoend afterrevealed all(tobecast|mylibrary) moveto(ownerlibrary) and!(moveTo(myBattlefield) and!(tap(noevent))!)! afterrevealedend revealend
|
||||
auto=@combat(attacking) source(mytgt):may name(search basic land) target(land[basic]|myLibrary) moveTo(myBattlefield) and!( transforms((,newability[tap(noevent)],newability[shuffle])) oneshot )!
|
||||
text=Equipped creature gets +1/+1. -- Whenever equipped creature attacks, you may search your library for a basic land card, put it onto the battlefield tapped, then shuffle your library. -- Equip {2}
|
||||
mana={2}
|
||||
type=Legendary Artifact
|
||||
@@ -117168,8 +117152,7 @@ name=Taigam's Strike
|
||||
target=creature
|
||||
auto=2/0 ueot
|
||||
auto=unblockable ueot
|
||||
auto=if rebound then ability$!moveto(exile) all(Taigam's Strike|mystack)!$ controller
|
||||
autoexile=@rebounded:may activate castcard(normal)
|
||||
auto=_REBOUND_
|
||||
text=Target creature gets +2/+0 until end of turn and can't be blocked this turn. -- Rebound (If you cast this spell from your hand, exile it as it resolves. At the beginning of your next upkeep, you may cast this card from exile without paying its mana cost.)
|
||||
mana={3}{U}
|
||||
type=Sorcery
|
||||
@@ -129395,8 +129378,7 @@ toughness=1
|
||||
name=Virulent Swipe
|
||||
target=creature
|
||||
auto=transforms((,newability[2/0],newability[deachtouch])) ueot
|
||||
auto=if rebound then ability$!moveto(exile) all(Virulent Swipe|mystack)!$ controller
|
||||
autoexile=@rebounded:may activate castcard(normal)
|
||||
auto=_REBOUND_
|
||||
text=Target creature gets +2/+0 and gains deathtouch until end of turn. -- Rebound (If you cast this spell from your hand, exile it as it resolves. At the beginning of your next upkeep, you may cast this card from exile without paying its mana cost.)
|
||||
mana={B}
|
||||
type=Instant
|
||||
@@ -129994,8 +129976,7 @@ type=Sorcery
|
||||
name=Void Squall
|
||||
target=*[-land]
|
||||
auto=moveto(ownerhand)
|
||||
auto=if rebound then ability$!moveto(exile) all(Void Squall|mystack)!$ controller
|
||||
autoexile=@rebounded:may activate castcard(normal)
|
||||
auto=_REBOUND_
|
||||
text=Return target nonland permanent to its owner's hand. -- Rebound (If you cast this spell from your hand, exile it as it resolves. At the beginning of your next upkeep, you may cast this card from exile without paying its mana cost.)
|
||||
mana={4}{U}
|
||||
type=Sorcery
|
||||
@@ -135609,9 +135590,8 @@ toughness=2
|
||||
[card]
|
||||
name=World at War
|
||||
auto=nextphasealter(add,combatphaseswithmain,controller,after<postbattle>)
|
||||
auto=untap all(creature[attacking])
|
||||
auto=if rebound then ability$!moveto(exile) all(World at War|mystack)!$ controller
|
||||
autoexile=@rebounded:may activate castcard(normal)
|
||||
auto=all(creature|mybattlefield) transforms((,newability[@each my combatends turnlimited:phaseaction[combatbegins once sourceinplay] untap])) ueot
|
||||
auto=_REBOUND_
|
||||
text=After the first postcombat main phase this turn, there's an additional combat phase followed by an additional main phase. At the beginning of that combat, untap all creatures that attacked this turn. -- Rebound (If you cast this spell from your hand, exile it as it resolves. At the beginning of your next upkeep, you may cast this card from exile without paying its mana cost.)
|
||||
mana={3}{R}{R}
|
||||
type=Sorcery
|
||||
|
||||
Reference in New Issue
Block a user