#AUTO_DEFINE _LEARN_
Cruel Cut
Etali, Primal Storm
plant elemental
type=summon
heroes' podium
other={emerge} name(Emerge) otherrestriction
Epic Downfall
Feed the Swarm
Heartless Act
gateway plaza
Subversive Acolyte update
Frontline Medic
devious cover-up
Kaervek, the Spiteful
Kitesail Corsair this(attacking)
Grasping Scoundrel this(attacking)
Thorned Moloch this(attacking)
Vivid Flying Fish this(attacking)
198 lines
9.3 KiB
Plaintext
198 lines
9.3 KiB
Plaintext
# Important note:
|
|
# Macros are *global*, it doesn't matter where they are defined
|
|
# Macro names are case insensitive, and the replacement algorithm does an exact match inside a string
|
|
# it means that if you have a macro named MACRO and a macro named MACRO2, you'll run into trouble because MACRO2 will match MACRO
|
|
# Because of that, you need to use a unique delimiter at the beginning and the end of a macro, I personally use "__"
|
|
#
|
|
# Limitations: parameter inside macro must not contain ")"
|
|
|
|
# Standard Cycling
|
|
#AUTO_DEFINE __CYCLING__($cost) $cost{cycle}:name(cycling) draw:1
|
|
|
|
# Basic Landcycling
|
|
#AUTO_DEFINE __BASIC_LANDCYCLING__($cost) $cost{cycle}:name(basic landcycling) moveTo(myhand) target(land[basic]|mylibrary)
|
|
|
|
# Dies, Evergreen
|
|
#AUTO_DEFINE _DIES_ @movedTo(this|graveyard) from(battlefield):
|
|
|
|
# Training
|
|
#AUTO_DEFINE _TRAINING_ @combat(attacking) source(this) restriction{trainer}:name(Training) dotrain
|
|
|
|
# Partner
|
|
#AUTO_DEFINE _PARTNER_ may name(Put partner in hand) moveto(myhand) target(*[partname]|mylibrary)
|
|
|
|
# Goad
|
|
#AUTO_DEFINE _GOAD_ transforms((,newability[counter(0/0.1.Goaded)],newability[this(counter{0/0.1.Goaded}>0) mustattack],newability[phaseaction[endofturn next once sourceinplay] removeallcounters(0/0.-1.Goaded)])) forever
|
|
|
|
# Rebound
|
|
#AUTO_DEFINE _REBOUND_ if rebound then all(this|mystack) moveto(exile) and!( transforms((,newability[@rebounded:may name(Cast rebounded card) activate castcard(normal)])) forever )!
|
|
|
|
# Populate
|
|
#AUTO_DEFINE _POPULATE_ name(Populate) clone notAtarget(creature[token]|myBattlefield)
|
|
|
|
# Ferocious
|
|
#AUTO_DEFINE _FEROCIOUS_ if type(creature[power>=4]|myBattlefield)~morethan~0 then
|
|
|
|
# Attacking
|
|
#AUTO_DEFINE _ATTACKING_ @combat(attacking) source(this):
|
|
|
|
# Blocked
|
|
#AUTO_DEFINE _BLOCKED_ @combat(blocked,turnlimited) source(this):
|
|
|
|
# Heroic
|
|
#AUTO_DEFINE _HEROIC_ @targeted(this) from(*[instant;sorcery;aura]|myCastingzone):
|
|
|
|
# Rally
|
|
#AUTO_DEFINE _RALLY_ @movedTo(other ally|myBattlefield):
|
|
|
|
# Landfall
|
|
#AUTO_DEFINE _LANDFALL_ @movedTo(land|myBattlefield):
|
|
|
|
# Addendum
|
|
#AUTO_DEFINE _ADDENDUM_ if compare(restriction{assorcery}~morethan~0) then
|
|
|
|
# Constellation
|
|
#AUTO_DEFINE _CONSTELLATION_ @movedTo(enchantment|myBattlefield):
|
|
|
|
# Amass, Set WAR
|
|
#AUTO_DEFINE _AMASS_($c) if type(army|mybattlefield)~morethan~0 then counter(1/1,$c) notATarget(army|myBattlefield) else create(Zombie Army:creature Zombie Army:0/0:black) and!(counter(1/1,$c) notATarget(army|myBattlefield))!
|
|
|
|
# Scry, Evergreen
|
|
#AUTO_DEFINE _SCRY_($c) scry:$c scrycore delayed dontshow donothing scrycoreend scryend
|
|
|
|
# Fabricate
|
|
#AUTO_DEFINE _FABRICATE_($c) transforms((,newability[choice counter(1/1.$c)],newability[choice create(Servo:Artifact Creature Servo:1/1)*$c])) ueot
|
|
|
|
# Enrage
|
|
#AUTO_DEFINE _ENRAGE_ @damaged(this):
|
|
|
|
# Whenever you draw your second card each turn
|
|
#AUTO_DEFINE _SECOND_DRAW_ @drawof(player) restriction{compare(pdrewcount)~equalto~2}:
|
|
|
|
# Adapt
|
|
#AUTO_DEFINE _ADAPT_($c) this(counter{1/1}<1) transforms((,newability[counter(1/1.$c)])) forever
|
|
|
|
# Battalion
|
|
#AUTO_DEFINE _BATTALION_ @combat(attacking) source(this) restriction{type(other creature[attacking]|myBattlefield)~morethan~1}:
|
|
|
|
# Champion
|
|
#AUTO_DEFINE _CHAMPION_($Word) aslongas(other $word|myBattlefield) choice notAtarget(other $word|myBattlefield) (blink)forsrc oneshot
|
|
|
|
# Metalcraft
|
|
#AUTO_DEFINE _METALCRAFT_ aslongas(artifact|mybattlefield) >2
|
|
|
|
# Echo
|
|
#AUTO_DEFINE _ECHO_($cost) $cost[{$c};next upkeep] sacrifice
|
|
|
|
# Threshold
|
|
#AUTO_DEFINE _THRESHOLD_ if type(*|mygraveyard)~morethan~6
|
|
|
|
# Splice onto Arcane
|
|
#AUTO_DEFINE _SPLICEARCANE_ movedTo(*[Arcane]|myStack):may castcard(copied noevent) target(*[Arcane]|myHand)
|
|
|
|
# Ripple
|
|
#AUTO_DEFINE _RIPPLE_($c) autostack=if casted(this) then reveal:$c optionone name(Cast Card) target(<upto:$c>[share!name!]|reveal) moveTo(mylibrary) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put on bottom) target(<$c>*|reveal) bottomoflibrary optiontwoend afterrevealed all(tobecast|mylibrary) moveTo(myLibrary) and!( activate castcard(normal) )! afterrevealedend revealend
|
|
|
|
# Recover
|
|
#AUTO_DEFINE _RECOVER_($cost) @movedTo(creature|myGraveyard) from(Battlefield):may pay{$cost} name(Return to owner Hand) moveTo(ownerHand) all(this) donothing?moveTo(exile) all(this)
|
|
|
|
# Clash
|
|
$AUTO_DEFINE _CLASH_ Put here a code if compare the casting cost based on Erratic Explosion. Meaby it would work with a few fix
|
|
|
|
# Conspire
|
|
#AUTO_DEFINE _CONSPIRE_ @movedTo(this|myStak):may {T(creature|myBattlefield)}{T(creature|myBattlefield)} castcard(copied noevent) target(*|myStack)
|
|
|
|
# Proliferate
|
|
#AUTO_DEFINE _PROLIFERATE_ name(Proliferate) notatarget(proliferation) proliferate
|
|
|
|
# Scavenge
|
|
#AUTO_DEFINE _SCAVENGE_($cost) {$cost}:name(scavenge) counter(1/1,storedpower) target(creature) asSorcery
|
|
|
|
# Monstrosity
|
|
#AUTO_DEFINE _MONSTROSITY_($cost,$c) name(Monstrosity) this(cantargetcard(*[-monstrous]) {$cost}:becomes(monstrous) forever && counter(1/1.$c)
|
|
|
|
# Outlast
|
|
#AUTO_DEFINE _OUTLAST_($cost) {$cost}{$cost}:counter(1/1,1) all(this) asSorcery
|
|
|
|
# Investigate token, Shadows over Innistrad SOI
|
|
#AUTO_DEFINE _INVESTIGATE_ token(Clue)
|
|
|
|
# Soulshift
|
|
#AUTO_DEFINE _SOULSHIFT_($c) @movedTo(this|myGraveyard) from(battlefield):may moveTo(myHand) target(creature[spirit;manacost<=$c]|myGraveyard)
|
|
|
|
# Ascend, Set XLN
|
|
#AUTO_DEFINE _ASCEND_ if type(City's Blessing|mybattlefield)~lessthan~1 then transforms((,newability[if type(*|mybattlefield)~morethan~9 then token(City's Blessing^notrigger)])) oneshot
|
|
|
|
# Effect with the City's blessing, Set XLN
|
|
#AUTO_DEFINE _CITY'S_BLESSING_ aslongas(City's Blessing|mybattlefield)>0
|
|
|
|
# Monarch
|
|
#AUTO_DEFINE _MONARCH_CONTROLLER_ if type(The Monarch|battlefield)~lessthan~1 then token(The Monarch) else all(The Monarch|battlefield) moveto(mybattlefield) and!( transforms((,newability[becomesmonarch controller])) forever )!
|
|
#AUTO_DEFINE _MONARCH_OPPONENT_ if type(The Monarch|battlefield)~lessthan~1 then token(The Monarch) opponent else all(The Monarch|battlefield) moveto(opponentbattlefield) and!( transforms((,newability[becomesmonarch controller])) forever )!
|
|
|
|
# Explore
|
|
#AUTO_DEFINE _EXPLORE_ reveal:1 optionone if type(land|reveal)~lessthan~1 then transforms((,newability[counter(1/1)])) optiononeend optiontwo if type(land|reveal)~morethan~0 then name(move to Hand) target(<1>*|reveal) moveto(myHand) else transforms((,newability[Choice name(back to library) target(<1>*|reveal) moveto(mylibrary)],newability[Choice name(put into Graveyard) target(<1>*|reveal) moveto(myGraveyard)])) optiontwoend revealend limit:1
|
|
|
|
# Treasure token, Set XLN
|
|
#AUTO_DEFINE _TREASURE_ token(Treasure Sur)
|
|
|
|
# Historic
|
|
#AUTO_DEFINE _HISTORIC_ notAtarget(*[artifact;saga;legendary]|myZones)
|
|
|
|
# Mentor, still not working with enhancements, pump effects
|
|
#AUTO_DEFINE _MENTOR_ @combat(attacking) source(this):counter(1/1,1) target(other creature[attacking;power<=pminus1minusend]|myBattlefield)
|
|
|
|
# Surveil
|
|
#AUTO_DEFINE _SURVEIL_ name(surveil) reveal:1 optionone name(put in graveyard) target(<upto:1>*|reveal) moveto(ownergraveyard) optiononeend optiontwo name(put in library) target(<1>*|reveal) moveto(ownerlibrary) optiontwoend revealend
|
|
|
|
# Undergrowth
|
|
#AUTO_DEFINE _UNDERGROWTH_ foreach(creature|myGraveyard)
|
|
|
|
# Afterlife
|
|
#AUTO_DEFINE _AFTERLIFE_($c) @movedTo(this|graveyard) from(battlefield):create(Spirit:Creature Spirit:1/1:white,black:flying)*$c
|
|
|
|
# Riot
|
|
#AUTO_DEFINE _RIOT_ movedTo(this|myBattlefield):transforms((,newability[ability$! name(Choose counter or ability) choice name(Put a +1/+1 counter) counter(1/1,1) target(creature) _ choice name(Gains Haste) haste target(creature) forever !$ controller]))
|
|
|
|
# Learn
|
|
#AUTO_DEFINE _LEARN_ name(Learn) transforms((,newability[if type(*[lesson]|mysideboard)~morethan~0 then choice name(Put lesson in hand) name(Put lesson in hand) target(*[lesson]|mysideboard) moveto(myhand)],newability[if type(*|myhand)~morethan~0 then choice name(Discard and draw) name(Discard and draw) target(*|myhand) reject and!(draw:1)!],newability[if type(Retriever Phoenix|mygraveyard)~morethan~0 then choice name(Return a Retriever Phoenix) name(Return a Retriever Phoenix) target(Retriever Phoenix|mygraveyard) moveto(myBattlefield)],newability[choice name(Don't learn) donothing])) oneshot
|
|
|
|
# Spectacle
|
|
#AUTO_DEFINE _SPECTACLE_($cost) compare(oplifelost)~morethan~0 {$cost}:
|
|
|
|
# Extort
|
|
#AUTO_DEFINE _EXTORT_ @movedto(*|mystack):pay({WB}) life:-1 opponent && life:1 controller
|
|
|
|
# Foretell
|
|
#AUTO_DEFINE _FORETELL_ {2}:name(Pay 2 and exile face-down) name(Pay 2 and exile face-down) doforetell myturnonly
|
|
|
|
# Angel Token
|
|
#AUTO_DEFINE _ANGELTOKEN_ create(Angel:Creature Angel:4/4:white:flying)
|
|
|
|
# Beast Token
|
|
#AUTO_DEFINE _BEASTTOKEN_ create(Beast:Creature Beast:3/3:green)
|
|
|
|
# Elephant Token
|
|
#AUTO_DEFINE _ELEPHANTTOKEN_ create(Elephant:Creature Elephant:3/3:green)
|
|
|
|
# Goblin Token
|
|
#AUTO_DEFINE _GOBLINTOKEN_ create(Goblin:Creature Goblin:1/1:red)
|
|
|
|
# Insect Token
|
|
#AUTO_DEFINE _INSECTTOKEN_ create(Insect:Creature Insect:1/1:green)
|
|
|
|
# Saproling Token
|
|
#AUTO_DEFINE _SAPROLINGTOKEN_ create(Saproling:creature Saproling:1/1:green)
|
|
|
|
# Soldier Token
|
|
#AUTO_DEFINE _SOLDIERTOKEN_ create(soldier:creature soldier:1/1:white)
|
|
|
|
# Spirit Token
|
|
#AUTO_DEFINE _SPIRITTOKEN_ create(Spirit:creature Spirit:1/1:white:flying)
|
|
|
|
# Wolf Token
|
|
#AUTO_DEFINE _WOLFTOKEN_ create(Wolf:creature Wolf:2/2:green)
|
|
|
|
# Zombie Token
|
|
#AUTO_DEFINE _ZOMBIETOKEN_ create(zombie:creature zombie:2/2:black)
|