# 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 contian ")" # 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) # Fabricate #AUTO_DEFINE _FABRICATE_($c) transforms((,newability[choice counter(1/1.$c)],newability[choice create(Servo:Artifact Creature Servo:1/1)*$c])) ueot # Dies, Evergreen #AUTO_DEFINE _DIES_ @movedTo(this|mygraveyard) from(battlefield): # Scry, Evergreen #AUTO_DEFINE _SCRY_($c) scry:$c scrycore delayed dontshow donothing scrycoreend scryend # 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))! # Ascend, Set XLN #AUTO_DEFINE _ASCEND_ if type(*[city's_blessing]|mybattlefield)~lessthan~1 then transforms((,newability[if type(*|mybattlefield)~morethan~9 then create(city's_blessing:city's_blessing:0/0:shroud:indestructible)])) # Effect with the City's blessing, Set XLN #AUTO_DEFINE _CITY'S_BLESSING_ aslongas(*[city's_blessing]|mybattlefield)>0 # Treasure token, Set XLN #AUTO_DEFINE _TREASURE_ create(Treasure:Artifact Treasure:0/0:"{T}, Sacrifice this artifact: Add one mana of any color.") and!( transforms((,newability[{T}{S}:Add{W}],newability[{T}{S}:Add{U}],newability[{T}{S}:Add{R}],newability[{T}{S}:Add{B}],newability[{T}{S}:Add{G}])) forever )! # Proliferate, still need to target players since the old code doesn't work (*[artifact;creature;...;players]) just let you target creature and player #AUTO_DEFINE _PROLIFERATE_ name(proliferate) notatarget(*) proliferate # 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)