Improved Die Roll event and trigger, added Flip Coin trigger management, added/fixed almost all primitives with "roll a die ability", fixed some tab chars in source files.
This commit is contained in:
@@ -197,7 +197,7 @@ bool JGuiController::CheckUserInput(JButton key)
|
||||
mObjects[mCurr]->Entering();
|
||||
}
|
||||
mEngine->LeftClickedProcessed();
|
||||
mEngine->ResetInput();
|
||||
mEngine->ResetInput();
|
||||
return true;
|
||||
}
|
||||
mEngine->LeftClickedProcessed();
|
||||
|
||||
@@ -27,6 +27,14 @@ mana={X}{1}{B}
|
||||
type=Sorcery
|
||||
[/card]
|
||||
[card]
|
||||
name=Abnormal Endurance
|
||||
target=creature
|
||||
auto=transforms((,newability[2/0],newability[@movedTo(this|graveyard) from(battlefield):all(trigger[to]) moveTo(ownerBattlefield) and!(tap(noevent))!])) ueot
|
||||
text=Until end of turn, target creature gets +2/+0 and gains "When this creature dies, return it to the battlefield tapped under its owner's control."
|
||||
mana={1}{B}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
name=Abominable Treefolk
|
||||
abilities=trample
|
||||
anyzone=type:*[snow]:myBattlefield/type:*[snow]:myBattlefield cdaactive
|
||||
@@ -261,6 +269,16 @@ mana={1}{U}{U}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
name=Adorable Kitten
|
||||
auto=rolladie 6 winability life:lastrollresult controller winabilityend loseability life:lastrollresult controller loseabilityend rollend
|
||||
text=When this creature enters the battlefield, roll a six-sided die. You gain life equal to the result.
|
||||
mana={W}
|
||||
type=Host Creature
|
||||
subtype=Cat
|
||||
power=1
|
||||
toughness=1
|
||||
[/card]
|
||||
[card]
|
||||
name=Adorned Pouncer
|
||||
abilities=double strike
|
||||
autograveyard={3}{W}{W}{E}:name(Eternalize) clone and!( transforms((Zombie,removemc,setpower=4,settoughness=4,black)) forever )! assorcery
|
||||
@@ -2343,12 +2361,12 @@ type=Enchantment
|
||||
[card]
|
||||
name=As Luck Would Have It
|
||||
abilities=opponentshroud
|
||||
auto=@dierolled(creature|battlefield) result(1):counter(0/0,1,Luck) all(this)
|
||||
auto=@dierolled(creature|battlefield) result(2):counter(0/0,2,Luck) all(this)
|
||||
auto=@dierolled(creature|battlefield) result(3):counter(0/0,3,Luck) all(this)
|
||||
auto=@dierolled(creature|battlefield) result(4):counter(0/0,4,Luck) all(this)
|
||||
auto=@dierolled(creature|battlefield) result(5):counter(0/0,5,Luck) all(this)
|
||||
auto=@dierolled(creature|battlefield) result(6):counter(0/0,6,Luck) all(this)
|
||||
auto=@dierolled(*|battlefield) result(1) from(controller):counter(0/0,1,Luck) all(this)
|
||||
auto=@dierolled(*|battlefield) result(2) from(controller):counter(0/0,2,Luck) all(this)
|
||||
auto=@dierolled(*|battlefield) result(3) from(controller):counter(0/0,3,Luck) all(this)
|
||||
auto=@dierolled(*|battlefield) result(4) from(controller):counter(0/0,4,Luck) all(this)
|
||||
auto=@dierolled(*|battlefield) result(5) from(controller):counter(0/0,5,Luck) all(this)
|
||||
auto=@dierolled(*|battlefield) result(6) from(controller):counter(0/0,6,Luck) all(this)
|
||||
auto=this(counter{0/0.100.Luck}=)) wingame controller
|
||||
text=Hexproof -- Whenever you roll a die, put a number of luck counters on As Luck Would Have It equal to the result. Then if there are 100 or more luck counters on As Luck Would Have It, you win the game. (Count both rolls if you reroll a die.)
|
||||
mana={G}
|
||||
@@ -3868,6 +3886,16 @@ mana={1}{U}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
name=Big Boa Constrictor
|
||||
auto=rolladie 6 winability life:-lastrollresult opponent winabilityend loseability life:-lastrollresult opponent loseabilityend rollend
|
||||
text=When this creature enters the battlefield, roll a six-sided die. Target opponent loses life equal to the result.
|
||||
mana={3}{B}
|
||||
type=Host Creature
|
||||
subtype=Snake
|
||||
power=1
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Binding Mummy
|
||||
auto=@movedto(other zombie|mybattlefield):may tap target(artifact,creature)
|
||||
text=Whenever another Zombie enters the battlefield under your control, you may tap target artifact or creature.
|
||||
@@ -5269,6 +5297,13 @@ mana={2}{G}{U}
|
||||
type=Enchantment
|
||||
[/card]
|
||||
[card]
|
||||
name=Box of Free-Range Goblins
|
||||
auto=rolladie 6 winability token(Goblin,Creature Goblin,1/1,red)*lastrollresult winabilityend loseability token(Goblin,Creature Goblin,1/1,red)*lastrollresult loseabilityend rollend
|
||||
text=Roll a six-sided die. Create a number of 1/1 red Goblin creature tokens equal to the result.
|
||||
mana={4}{R}{R}
|
||||
type=Sorcery
|
||||
[/card]
|
||||
[card]
|
||||
name=Brallin, Skyshark Rider
|
||||
abilities=hiddenface,partner
|
||||
aicode=activate moveTo(myhand) target(Shabraz, the Skyshark|mylibrary)
|
||||
@@ -7442,6 +7477,35 @@ power=1
|
||||
toughness=3
|
||||
[/card]
|
||||
[card]
|
||||
name=Chicken a la King
|
||||
auto=@dierolled(*|battlefield) result(6) from(controller):all(chicken|battlefield) counter(1/1)
|
||||
auto={T(*[chicken]|mybattlefield)}:rolladie 6 winability donothing winabilityend rollend
|
||||
text=Whenever a 6 is rolled on a six-sided die, put a +1/+1 counter on each Chicken in play. (You may roll dice only when a card instructs you to.) -- Tap a Chicken you control: Roll a six-sided die.
|
||||
mana={1}{U}{U}
|
||||
type=Summon
|
||||
subtype=Chicken
|
||||
[/card]
|
||||
[card]
|
||||
name=Chicken à la King
|
||||
auto=@dierolled(*|battlefield) result(6) from(controller):all(chicken|battlefield) counter(1/1)
|
||||
auto={T(*[chicken]|mybattlefield)}:rolladie 6 winability donothing winabilityend rollend
|
||||
text=Whenever a 6 is rolled on a six-sided die, put a +1/+1 counter on each Bird. (You may roll dice only when instructed to.) -- Tap an untapped Bird you control: Roll a six-sided die. (Like now.)
|
||||
mana={1}{U}{U}
|
||||
type=Creature
|
||||
subtype=Bird
|
||||
power=2
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Chicken Egg
|
||||
auto=@each my upkeep:rolladie 6 winability donothing winabilityend rollend
|
||||
auto=@dierolled(this) result(6) from(controller):all(this) sacrifice && token(Giant Chicken,Creature Giant Chicken,4/4,red) myupkeeponly
|
||||
text=During your upkeep, roll a six-sided die. On a 6, sacrifice Chicken Egg and put a Giant Chicken token into play. Treat this token as a 4/4 red creature that counts as a Chicken.
|
||||
mana={1}{R}
|
||||
type=Summon
|
||||
subtype=Egg
|
||||
[/card]
|
||||
[card]
|
||||
name=Chief Engineer
|
||||
auto=lord(artifact|myhand,mylibrary,mygraveyard,myexile,mysideboard) convoke
|
||||
text=Artifact spells you cast have convoke. (Your creatures can help cast those spells. Each creature you tap while casting an artifact spell pays for {1} or one mana of that creature’s color.)
|
||||
@@ -7512,9 +7576,9 @@ toughness=4
|
||||
[/card]
|
||||
[card]
|
||||
name=Chittering Doom
|
||||
auto=@dierolled(creature|battlefield) result(4):token(Squirrel,Creature Squirrel,1/1,green)
|
||||
auto=@dierolled(creature|battlefield) result(5):token(Squirrel,Creature Squirrel,1/1,green)
|
||||
auto=@dierolled(creature|battlefield) result(6):token(Squirrel,Creature Squirrel,1/1,green)
|
||||
auto=@dierolled(*|battlefield) result(4) from(controller):token(Squirrel,Creature Squirrel,1/1,green)
|
||||
auto=@dierolled(*|battlefield) result(5) from(controller):token(Squirrel,Creature Squirrel,1/1,green)
|
||||
auto=@dierolled(*|battlefield) result(6) from(controller):token(Squirrel,Creature Squirrel,1/1,green)
|
||||
text=Whenever you roll a 4 or higher on a die, create a 1/1 green Squirrel creature token.
|
||||
mana={3}{G}
|
||||
type=Enchantment
|
||||
@@ -7780,7 +7844,7 @@ type=Sorcery
|
||||
[/card]
|
||||
[card]
|
||||
name=Clam-I-Am
|
||||
auto=@dierolled(creature|battlefield) result(3):all(this) rolladie 6 winability donothing winabilityend loseability donothing loseabilityend rollend
|
||||
auto=@dierolled(*|battlefield) result(3) from(controller):all(this) rolladie 6 winability donothing winabilityend loseability donothing loseabilityend rollend
|
||||
text=Whenever you roll a 3 on a six-sided die, you may reroll that die.
|
||||
mana={2}{U}
|
||||
type=Summon
|
||||
@@ -13536,6 +13600,16 @@ power=3
|
||||
toughness=3
|
||||
[/card]
|
||||
[card]
|
||||
name=Elvish Impersonators
|
||||
auto=all(this) transforms((Creature Summon Elves,setpower=1,settoughness=1)) forever
|
||||
auto=all(this) rolladie 6 winability lastrollresultminus1minusend/0 winabilityend loseability lastrollresultminus1minusend/0 loseabilityend rollend
|
||||
auto=all(this) rolladie 6 winability 0/lastrollresultminus1minusend winabilityend loseability 0/lastrollresultminus1minusend loseabilityend rollend
|
||||
text=When you play Elvish Impersonators, roll two six-sided dice one after the other. Elvish Impersonators comes into play with power equal to the first die roll and toughness equal to the second.
|
||||
mana={3}{G}
|
||||
type=Summon
|
||||
subtype=Elves
|
||||
[/card]
|
||||
[card]
|
||||
name=Elvish Reclaimer
|
||||
aicode=activate moveTo(myBattlefield) and!(tap(noevent))! target(land|myLibrary)
|
||||
auto=aslongas(land|myGraveyard) 2/2 >2
|
||||
@@ -17352,6 +17426,29 @@ power=3
|
||||
toughness=3
|
||||
[/card]
|
||||
[card]
|
||||
name=Garbage Elemental (c)
|
||||
auto=@combat(attacking) source(this):all(other creature[attacking]) 1/0 ueot
|
||||
suto=all(this) rolladie winability token(Goblin,Creature Goblin,1/1,red)*lastrollresultminuslastrollchoiceminusend winabilityend loseability token(Goblin,Creature Goblin,1/1,red)*lastrollresultminuslastrollchoiceminusend loseabilityend rollend
|
||||
text=Battle cry (Whenever this creature attacks, each other attacking creature gets +1/+0 until end of turn.) -- When Garbage Elemental enters the battlefield, roll two six-sided dice. Create a number of 1/1 red Goblin creature tokens equal to the difference between those results.
|
||||
mana={4}{R}
|
||||
type=Creature
|
||||
subtype=Elemental
|
||||
power=3
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Garbage Elemental (d)
|
||||
autostack=if casted(this) then cascade:plibrarycount
|
||||
auto=choice name(Damage opponent) all(this) rolladie 6 winability damage:lastrollresult opponent winabilityend loseability damage:lastrollresult opponent loseabilityend rollend
|
||||
auto=if type(planeswalker|battlefield)~morethan~0 then choice name(Damage planeswalker) target(planeswalker) rolladie 6 winability damage:lastrollresult winabilityend loseability damage:lastrollresult loseabilityend rollend
|
||||
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.) -- When Garbage Elemental enters the battlefield, roll a six-sided die. Garbage Elemental deals damage equal to the result to target opponent or planeswalker.
|
||||
mana={4}{R}
|
||||
type=Creature
|
||||
subtype=Elemental
|
||||
power=3
|
||||
toughness=3
|
||||
[/card]
|
||||
[card]
|
||||
name=Garenbrig Carver // Shield's Might
|
||||
abilities=canplayfromexile,flash,adventure
|
||||
restriction=myturnonly
|
||||
@@ -18695,6 +18792,16 @@ power=2
|
||||
toughness=1
|
||||
[/card]
|
||||
[card]
|
||||
name=Goblin Bowling Team
|
||||
auto=@damaged(creature) from(this):all(trigger[to]) rolladie 6 winability damage:lastrollresult winabilityend loseability damage:lastrollresult loseabilityend rollend
|
||||
auto=@damageof(player) from(this):all(this) rolladie 6 winability damage:lastrollresult controller winabilityend loseability damage:lastrollresult controller loseabilityend rollend
|
||||
auto=@damagefoeof(player) from(this):all(this) rolladie 6 winability damage:lastrollresult opponent winabilityend loseability damage:lastrollresult opponent loseabilityend rollend
|
||||
text=Whenever Goblin Bowling Team damages any creature or player, roll a six-sided die. Goblin Bowling Team deals to that creature or player additional damage equal to the die roll.
|
||||
mana={3}{R}
|
||||
type=Summon
|
||||
subtype=Goblins
|
||||
[/card]
|
||||
[card]
|
||||
name=Goblin Bruiser
|
||||
mana={1}{R}{R}
|
||||
type=Creature
|
||||
@@ -18868,6 +18975,26 @@ power=2
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Goblin Test Pilot
|
||||
abilities=flying
|
||||
auto={T}:all(this) rolladie 6 winability counter(0/0,1,GoblinEffect) winabilityend loseability counter(0/0,1,GoblinEffect) loseabilityend rollend
|
||||
auto=@dierolled(this) result(1) from(controller):this(counter{0/0.1.GoblinEffect}=1) name(Damage 2 to opponent) name(Damage 2 to opponent) damage:2 opponent && counter(0/0,-1,GoblinEffect) all(this)
|
||||
auto=@dierolled(this) result(2) from(controller):this(counter{0/0.1.GoblinEffect}=1) name(Damage 2 to yourself) name(Damage 2 to yourself) damage:2 controller && counter(0/0,-1,GoblinEffect) all(this)
|
||||
auto=@dierolled(this) result(3) from(controller) restriction{type(creature|myBattlefield)~lessthan~2}:this(counter{0/0.1.GoblinEffect}=1) name(Damage 2 to yourself) name(Damage 2 to yourself) damage:2 controller && counter(0/0,-1,GoblinEffect) all(this)
|
||||
auto=@dierolled(this) result(3) from(controller) restriction{type(creature|myBattlefield)~morethan~1}:this(counter{0/0.1.GoblinEffect}=1) name(Damage 2 to your creature) name(Damage 2 to your creature) ability$!name(Damage creature) damage:2 target(creature|opponentBattlefield)!$ opponent && counter(0/0,-1,GoblinEffect) all(this)
|
||||
auto=@dierolled(this) result(4) from(controller) restriction{type(creature|opponentBattlefield)~morethan~0}:this(counter{0/0.1.GoblinEffect}=1) name(Damage 2 opponent's creature) name(Damage 2 to opponent's creature) ability$!name(Damage creature) damage:2 target(creature|myBattlefield)!$ opponent && counter(0/0,-1,GoblinEffect) all(this)
|
||||
auto=@dierolled(this) result(4) from(controller) restriction{type(creature|opponentBattlefield)~equalto~0}:this(counter{0/0.1.GoblinEffect}=1) name(Damage 2 to opponent) name(Damage 2 to opponent) damage:2 opponent && counter(0/0,-1,GoblinEffect) all(this)
|
||||
auto=@dierolled(this) result(5) from(controller) restriction{type(creature|opponentBattlefield)~morethan~0}:this(counter{0/0.1.GoblinEffect}=1) name(Damage 2 opponent's creature) name(Damage 2 to opponent's creature) ability$!name(Damage creature) damage:2 target(creature|myBattlefield)!$ opponent && counter(0/0,-1,GoblinEffect) all(this)
|
||||
auto=@dierolled(this) result(5) from(controller) restriction{type(creature|opponentBattlefield)~equalto~0}:this(counter{0/0.1.GoblinEffect}=1) name(Damage 2 to opponent) name(Damage 2 to opponent) damage:2 opponent && counter(0/0,-1,GoblinEffect) all(this)
|
||||
auto=@dierolled(this) result(6) from(controller):this(counter{0/0.1.GoblinEffect}=1) name(Damage 2 to your creature) name(Damage 2 to your creature) ability$!name(Damage creature) damage:2 target(creature|opponentBattlefield)!$ opponent && counter(0/0,-1,GoblinEffect) all(this)
|
||||
text=Flying -- {T}: Goblin Test Pilot deals 2 damage to target creature or player chosen at random.
|
||||
mana={1}{U}{R}
|
||||
type=Creature
|
||||
subtype=Goblin Wizard
|
||||
power=0
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Goblin Trailblazer
|
||||
abilities=menace
|
||||
text=Menace
|
||||
@@ -18916,6 +19043,13 @@ mana={3}{R}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
name=Goblin War Cry
|
||||
auto=thisforeach(variable{type:creature:opponentBattlefieldminus1minusend}) ability$!name(Creature can't block) name(Creature can't block) target(creature|myBattlefield) cantblock ueot!$ opponent
|
||||
text=Target opponent chooses a creature he or she controls. Other creatures he or she controls can't block this turn.
|
||||
mana={2}{R}
|
||||
type=Sorcery
|
||||
[/card]
|
||||
[card]
|
||||
name=God-Eternal Bontu
|
||||
abilities=menace
|
||||
auto=may notatarget(<anyamount>other *|mybattlefield) sacrifice && draw:1
|
||||
@@ -18988,6 +19122,16 @@ mana={6}
|
||||
type=Legendary Artifact
|
||||
[/card]
|
||||
[card]
|
||||
name=Godo's Irregulars
|
||||
auto=@combat(blocked) source(this):all(this) transforms((,newability[{R}:damage:1 target(creature[blocking]|opponentbattlefield)])) ueot
|
||||
text={R}: Godo's Irregulars deals 1 damage to target creature blocking it.
|
||||
mana={R}
|
||||
type=Creature
|
||||
subtype=Human Warrior
|
||||
power=1
|
||||
toughness=1
|
||||
[/card]
|
||||
[card]
|
||||
name=Goka the Unjust
|
||||
auto={T}:damage:1 target(creature[damaged])
|
||||
text={T}: Goka the Unjust deals 4 damage to target creature that was dealt damage this turn.
|
||||
@@ -19744,8 +19888,8 @@ type=Instant
|
||||
[card]
|
||||
name=Ground Pounder
|
||||
auto={3}{G}:all(this) rolladie 6 winability lastrollresult/lastrollresult ueot winabilityend loseability lastrollresult/lastrollresult ueot loseabilityend rollend
|
||||
auto=@dierolled(creature|battlefield) result(5):name(Gains trample) name(Gains trample) all(this) transforms((,newability[trample])) ueot
|
||||
auto=@dierolled(creature|battlefield) result(6):name(Gains trample) name(Gains trample) all(this) transforms((,newability[trample])) ueot
|
||||
auto=@dierolled(*|battlefield) result(5) from(controller):name(Gains trample) name(Gains trample) all(this) transforms((,newability[trample])) ueot
|
||||
auto=@dierolled(*|battlefield) result(6) from(controller):name(Gains trample) name(Gains trample) all(this) transforms((,newability[trample])) ueot
|
||||
text={3}{G}: Roll a six-sided die. Ground Pounder gets +X/+X until end of turn, where X is the result. -- Whenever you roll a 5 or higher on a die, Ground Pounder gains trample until end of turn.
|
||||
mana={1}{G}
|
||||
type=Creature
|
||||
@@ -19788,6 +19932,13 @@ mana={G}{U}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
name=Growth Spurt
|
||||
auto=target(creature) rolladie 6 winability lastrollresult/lastrollresult ueot winabilityend loseability lastrollresult/lastrollresult ueot loseabilityend rollend
|
||||
text=Roll a six-sided die. Target creature gets +X/+X until end of turn, where X is equal to the die roll.
|
||||
mana={1}{G}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
name=Growth-Chamber Guardian
|
||||
auto={2}{G}:this(counter{1/1.1}<1) transforms((,newability[counter(1/1.2)])) forever
|
||||
auto=@counteradded(1/1) from(this):transforms((,newability[moveTo(myHand) target(Growth-Chamber Guardian|myLibrary)])) once
|
||||
@@ -20244,14 +20395,22 @@ power=5
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Hammer Helper
|
||||
target=creature
|
||||
auto=moveto(mybattlefield) and!(transforms((,newability[phaseaction[endofturn sourceinplay] moveTo(previousbattlefield)],newability[all(this) rolladie 6 winability lastrollresult/0 ueot winabilityend loseability lastrollresult/0 ueot loseabilityend rollend],newability[untap],haste)) ueot)!
|
||||
text=Gain control of target creature until end of turn. Untap that creature and roll a six-sided die. Until end of turn, it gains haste and gets +X/+0, where X is the result.
|
||||
mana={3}{R}
|
||||
type=Sorcery
|
||||
[/card]
|
||||
[card]
|
||||
name=Hammer Jammer
|
||||
auto={3}{G}:all(this) rolladie 6 winability counter(1/1,lastrollresult) winabilityend loseability counter(1/1,lastrollresult) loseabilityend rollend
|
||||
auto=@dierolled(creature|battlefield) result(1):name(Get counter) name(Get counter) removeallcounters(1/1) && transforms((,newability[counter(1/1.1)])) all(this)
|
||||
auto=@dierolled(creature|battlefield) result(2):name(Get counters) name(Get counters) removeallcounters(1/1) && transforms((,newability[counter(1/1.2)])) all(this)
|
||||
auto=@dierolled(creature|battlefield) result(3):name(Get counters) name(Get counters) removeallcounters(1/1) && transforms((,newability[counter(1/1.3)])) all(this)
|
||||
auto=@dierolled(creature|battlefield) result(4):name(Get counters) name(Get counters) removeallcounters(1/1) && transforms((,newability[counter(1/1.4)])) all(this)
|
||||
auto=@dierolled(creature|battlefield) result(5):name(Get counters) name(Get counters) removeallcounters(1/1) && transforms((,newability[counter(1/1.5)])) all(this)
|
||||
auto=@dierolled(creature|battlefield) result(6):name(Get counters) name(Get counters) removeallcounters(1/1) && transforms((,newability[counter(1/1.6)])) all(this)
|
||||
auto=@dierolled(*|battlefield) result(1) from(controller):name(Get counter) name(Get counter) removeallcounters(1/1) && transforms((,newability[counter(1/1.1)])) all(this)
|
||||
auto=@dierolled(*|battlefield) result(2) from(controller):name(Get counters) name(Get counters) removeallcounters(1/1) && transforms((,newability[counter(1/1.2)])) all(this)
|
||||
auto=@dierolled(*|battlefield) result(3) from(controller):name(Get counters) name(Get counters) removeallcounters(1/1) && transforms((,newability[counter(1/1.3)])) all(this)
|
||||
auto=@dierolled(*|battlefield) result(4) from(controller):name(Get counters) name(Get counters) removeallcounters(1/1) && transforms((,newability[counter(1/1.4)])) all(this)
|
||||
auto=@dierolled(*|battlefield) result(5) from(controller):name(Get counters) name(Get counters) removeallcounters(1/1) && transforms((,newability[counter(1/1.5)])) all(this)
|
||||
auto=@dierolled(*|battlefield) result(6) from(controller):name(Get counters) name(Get counters) removeallcounters(1/1) && transforms((,newability[counter(1/1.6)])) all(this)
|
||||
text=As Hammer Jammer enters the battlefield, roll a six-sided die. Hammer Jammer enters the battlefield with a number of +1/+1 counters on it equal to the result. -- Whenever you roll a die, remove all +1/+1 counters from Hammer Jammer, then put a number of +1/+1 counters on it equal to the result.
|
||||
mana={3}{R}
|
||||
type=Creature
|
||||
@@ -22018,6 +22177,17 @@ type=Enchantment
|
||||
subtype=Aura
|
||||
[/card]
|
||||
[card]
|
||||
name=Hydradoodle
|
||||
abilities=reach,trample
|
||||
auto=thisforeach(variable{halfpaid}) all(this) rolladie 6 winability counter(1/1,lastrollresult) winabilityend loseability counter(1/1,lastrollresult) loseabilityend rollend
|
||||
text=As Hydradoodle enters the battlefield, roll X six-sided dice. Hydradoodle enters the battlefield with a number of +1/+1 counters on it equal to the total of those results. -- Reach, trample
|
||||
mana={X}{X}{G}{G}
|
||||
type=Creature
|
||||
subtype=Hydra Hound
|
||||
power=0
|
||||
toughness=0
|
||||
[/card]
|
||||
[card]
|
||||
name=Hydroid Krasis
|
||||
abilities=flying, trample
|
||||
autostack=if casted(this) then draw:3
|
||||
@@ -22589,6 +22759,17 @@ power=6
|
||||
toughness=1
|
||||
[/card]
|
||||
[card]
|
||||
name=Impetuous Protege
|
||||
auto=may name(Put partner on your hand) name(Put partner on your hand) moveto(myhand) target(*[Proud Mentor]|mylibrary)
|
||||
auto=@combat(attacking) source(this):all(this) power:highest:creature[tapped]:opponentbattlefield/0 ueot
|
||||
text=Partner with Proud Mentor (When this creature enters the battlefield, target player may put Proud Mentor into their hand from their library, then shuffle.) -- Whenever Impetuous Protege attacks, it gets +X/+0 until end of turn, where X is the greatest power among tapped creatures your opponents control.
|
||||
mana={2}{R}
|
||||
type=Creature
|
||||
subtype=Human Warrior
|
||||
power=0
|
||||
toughness=4
|
||||
[/card]
|
||||
[card]
|
||||
name=Imposing Vantasaur
|
||||
abilities=vigilance
|
||||
autohand=__CYCLING__({1})
|
||||
@@ -22976,6 +23157,21 @@ mana={7}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
name=Inhumaniac
|
||||
auto=@each my upkeep:rolladie 6 winability donothing winabilityend rollend
|
||||
auto=@dierolled(this) result(1) from(controller):all(this) removeallcounters(1/1) myupkeeponly
|
||||
auto=@dierolled(this) result(3) from(controller):all(this) counter(1/1,1) myupkeeponly
|
||||
auto=@dierolled(this) result(4) from(controller):all(this) counter(1/1,1) myupkeeponly
|
||||
auto=@dierolled(this) result(5) from(controller):all(this) counter(1/1,2) myupkeeponly
|
||||
auto=@dierolled(this) result(6) from(controller):all(this) counter(1/1,2) myupkeeponly
|
||||
text=At the beginning of your upkeep, roll a six-sided die. On a 3 or 4, put a +1/+1 counter on Inhumaniac. On a 5 or higher, put two +1/+1 counters on it. On a 1, remove all +1/+1 counters from Inhumaniac.
|
||||
mana={1}{B}
|
||||
type=Creature
|
||||
subtype=Brainiac
|
||||
power=1
|
||||
toughness=1
|
||||
[/card]
|
||||
[card]
|
||||
name=Initiate of Blood
|
||||
auto={T}:name(damage my creature) target(creature[damaged]|mybattlefield) transforms((,newability[damage:1 all(this)],newability[@movedto(this|graveyard) from(battlefield):notatarget(Initiate of Blood|mybattlefield) flip(Goka the Unjust)])) ueot
|
||||
auto={T}:name(damage opponent's creature) target(creature[damaged]|opponentbattlefield) transforms((,newability[damage:1 all(this)],newability[@movedto(this|graveyard) from(battlefield):notatarget(Initiate of Blood|opponentbattlefield) flip(Goka the Unjust)])) ueot
|
||||
@@ -23772,6 +23968,19 @@ power=0
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Jack-in-the-Mox
|
||||
auto={T}:all(this) rolladie 6 winability counter(0/0,1,JackEffect) winabilityend loseability counter(0/0,1,JackEffect) loseabilityend rollend
|
||||
auto=@dierolled(this) result(1) from(controller):this(counter{0/0.1.JackEffect}=1) name(Sacrifice Jack-in-the-Mox) name(Sacrifice Jack-in-the-Mox) sacrifice && counter(0/0,-1,JackEffect) all(this)
|
||||
auto=@dierolled(this) result(2) from(controller):this(counter{0/0.1.JackEffect}=1) name(Add white mana) name(Add white mana) add{W} && counter(0/0,-1,JackEffect) all(this)
|
||||
auto=@dierolled(this) result(3) from(controller):this(counter{0/0.1.JackEffect}=1) name(Add blue mana) name(Add blue mana) add{U} && counter(0/0,-1,JackEffect) all(this)
|
||||
auto=@dierolled(this) result(4) from(controller):this(counter{0/0.1.JackEffect}=1) name(Add black mana) name(Add black mana) add{B} && counter(0/0,-1,JackEffect) all(this)
|
||||
auto=@dierolled(this) result(5) from(controller):this(counter{0/0.1.JackEffect}=1) name(Add red mana) name(Add red mana) add{R} && counter(0/0,-1,JackEffect) all(this)
|
||||
auto=@dierolled(this) result(6) from(controller):this(counter{0/0.1.JackEffect}=1) name(Add green mana) name(Add green mana) add{G} && counter(0/0,-1,JackEffect) all(this)
|
||||
text={T}: Roll a six-sided die for Jack-in-the-Mox. On a 1, sacrifice Jack-in-the-Mox and lose 5 life. Otherwise, Jack-in-the-Mox has one of the following effects. Treat this ability as a mana source. -- 2 Add {W} to your mana pool. -- 3 Add {U} to your mana pool. -- 4 Add {B} to your mana pool. -- 5 Add {R} to your mana pool. -- 6 Add {G} to your mana pool.
|
||||
mana={0}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
name=Jade Bearer
|
||||
auto=counter(1/1) target(other merfolk|myBattlefield)
|
||||
text=When Jade Bearer enters the battlefield, put a +1/+1 counter on another target Merfolk you control.
|
||||
@@ -24133,6 +24342,18 @@ power=2
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Jumbo Imp
|
||||
abilities=flying
|
||||
auto=transforms((Creature Summon Imp,setpower=0,settoughness=0)) forever
|
||||
auto=all(this) rolladie 6 winability counter(1/1,lastrollresult) winabilityend loseability counter(1/1,lastrollresult) loseabilityend rollend
|
||||
auto=@each my upkeep:all(this) rolladie 6 winability counter(1/1,lastrollresult) winabilityend loseability counter(1/1,lastrollresult) loseabilityend rollend
|
||||
auto=@each my endofturn:all(this) rolladie 6 winability counter(1/1,-lastrollresult) winabilityend loseability counter(1/1,-lastrollresult) loseabilityend rollend
|
||||
text=Flying -- When you play Jumbo Imp, roll a six-sided die. Jumbo Imp comes into play with a number of +1/+1 counters on it equal to the die roll. -- During your upkeep, roll a six-sided die and put on Jumbo Imp a number of +1/+1 counters equal to the die roll. -- At the end of your turn, roll a six-sided die and remove from Jumbo Imp a number of +1/+1 counters equal to the die roll.
|
||||
mana={2}{B}
|
||||
type=Summon
|
||||
subtype=Imp
|
||||
[/card]
|
||||
[card]
|
||||
name=Jungle Creeper
|
||||
auto={3}{B}{G}:moveto(myhand) all(this)
|
||||
text={3}{B}{G}: Return Jungle Creeper from your graveyard to your hand.
|
||||
@@ -25474,6 +25695,14 @@ power=1
|
||||
toughness=4
|
||||
[/card]
|
||||
[card]
|
||||
name=Khorvath's Fury
|
||||
auto=count(type:*:myhand) && all(*|myhand) reject && draw:countedamountplus1plusend controller
|
||||
auto=damage:ohandcount opponent
|
||||
text=For each player, choose friend or foe. Each friend discards all cards from their hand, then draws that many cards plus one. Khorvath's Fury deals damage to each foe equal to the number of cards in their hand.
|
||||
mana={4}{R}
|
||||
type=Sorcery
|
||||
[/card]
|
||||
[card]
|
||||
name=Korvold, Fae-Cursed King
|
||||
abilities=flying
|
||||
auto=sacrifice target(*|mybattlefield)
|
||||
@@ -25600,6 +25829,45 @@ power=4
|
||||
toughness=4
|
||||
[/card]
|
||||
[card]
|
||||
name=Krav, the Unredeemed
|
||||
auto=may name(Put partner on your hand) name(Put partner on your hand) moveto(myhand) target(Regna, the Redeemer|mylibrary)
|
||||
auto={B}{S(creature|myBattlefield)}:name(Sacrifice 1 creature and target yourself) name(Sacrifice 1 creature and target yourself) all(this) counter(1/1,1) && life:1 controller && draw:1 conroller
|
||||
auto={B}{S(creature|myBattlefield)}:name(Sacrifice 1 creature and target opponent) name(Sacrifice 1 creature and target opponent) all(this) counter(1/1,1) && life:1 opponent && draw:1 opponent
|
||||
auto={B}{S(creature|myBattlefield)}{S(creature|myBattlefield)}:name(Sacrifice 2 creatures and target yourself) name(Sacrifice 2 creatures and target yourself) all(this) counter(1/1,2) && life:2 controller && draw:2 conroller
|
||||
auto={B}{S(creature|myBattlefield)}{S(creature|myBattlefield)}:name(Sacrifice 2 creatures and target opponent) name(Sacrifice 2 creatures and target opponent) all(this) counter(1/1,2) && life:2 opponent && draw:2 opponent
|
||||
auto={B}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}:name(Sacrifice 3 creatures and target yourself) name(Sacrifice 3 creatures and target yourself) all(this) counter(1/1,3) && life:3 controller && draw:3 conroller
|
||||
auto={B}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}:name(Sacrifice 3 creatures and target opponent) name(Sacrifice 3 creatures and target opponent) all(this) counter(1/1,3) && life:3 opponent && draw:3 opponent
|
||||
auto={B}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}:name(Sacrifice 4 creatures and target yourself) name(Sacrifice 4 creatures and target yourself) all(this) counter(1/1,4) && life:4 controller && draw:4 conroller
|
||||
auto={B}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}:name(Sacrifice 4 creatures and target opponent) name(Sacrifice 4 creatures and target opponent) all(this) counter(1/1,4) && life:4 opponent && draw:4 opponent
|
||||
auto={B}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}:name(Sacrifice 5 creatures and target yourself) name(Sacrifice 5 creatures and target yourself) all(this) counter(1/1,5) && life:5 controller && draw:5 conroller
|
||||
auto={B}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}:name(Sacrifice 5 creatures and target opponent) name(Sacrifice 5 creatures and target opponent) all(this) counter(1/1,5) && life:5 opponent && draw:5 opponent
|
||||
auto={B}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}:name(Sacrifice 6 creatures and target yourself) name(Sacrifice 6 creatures and target yourself) all(this) counter(1/1,6) && life:6 controller && draw:6 conroller
|
||||
auto={B}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}:name(Sacrifice 6 creatures and target opponent) name(Sacrifice 6 creatures and target opponent) all(this) counter(1/1,6) && life:6 opponent && draw:6 opponent
|
||||
auto={B}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}:name(Sacrifice 7 creatures and target yourself) name(Sacrifice 7 creatures and target yourself) all(this) counter(1/1,7) && life:7 controller && draw:7 conroller
|
||||
auto={B}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}:name(Sacrifice 7 creatures and target opponent) name(Sacrifice 7 creatures and target opponent) all(this) counter(1/1,7) && life:7 opponent && draw:7 opponent
|
||||
auto={B}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}:name(Sacrifice 8 creatures and target yourself) name(Sacrifice 8 creatures and target yourself) all(this) counter(1/1,8) && life:8 controller && draw:8 conroller
|
||||
auto={B}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}:name(Sacrifice 8 creatures and target opponent) name(Sacrifice 8 creatures and target opponent) all(this) counter(1/1,8) && life:8 opponent && draw:8 opponent
|
||||
auto={B}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}:name(Sacrifice 9 creatures and target yourself) name(Sacrifice 9 creatures and target yourself) all(this) counter(1/1,9) && life:9 controller && draw:9 conroller
|
||||
auto={B}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}:name(Sacrifice 9 creatures and target opponent) name(Sacrifice 9 creatures and target opponent) all(this) counter(1/1,9) && life:9 opponent && draw:9 opponent
|
||||
auto={B}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}:name(Sacrifice 10 creatures and target yourself) name(Sacrifice 10 creatures and target yourself) all(this) counter(1/1,10) && life:10 controller && draw:10 conroller
|
||||
auto={B}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}{S(creature|myBattlefield)}:name(Sacrifice 10 creatures and target opponent) name(Sacrifice 10 creatures and target opponent) all(this) counter(1/1,10) && life:10 opponent && draw:10 opponent
|
||||
text=Partner with Regna, the Redeemer (When this creature enters the battlefield, target player may put Regna into their hand from their library, then shuffle.) -- {B}, Sacrifice X creatures: Target player draws X cards and gains X life. Put X +1/+1 counters on Krav, the Unredeemed.
|
||||
mana={4}{B}
|
||||
type=Legendary Creature
|
||||
subtype=Demon Krav
|
||||
power=3
|
||||
toughness=3
|
||||
[/card]
|
||||
[card]
|
||||
name=Krazy Kow
|
||||
auto=@each my upkeep:all(this) rolladie 6 winability donothing winabilityend rollend
|
||||
auto=@dierolled(this) result(1) from(controller):name(Sacrifice and damage) name(Sacrifice and damage) sacrifice all(this) && damage:3 opponent && damage:3 controller && damage:3 all(creature|battlefield)
|
||||
text=During your upkeep, roll a six-sided die. On a 1, sacrifice Krazy Kow and it deals 3 damage to each creature and player.
|
||||
mana={3}{R}
|
||||
type=Summon
|
||||
subtype=Cow
|
||||
[/card]
|
||||
[card]
|
||||
name=Krenko, Tin Street Kingpin
|
||||
auto=@combat(attacking) source(this):create(goblin:goblin creature:1/1:red)*power
|
||||
auto=@combat(attacking) source(this):counter(1/1)
|
||||
@@ -27098,6 +27366,15 @@ power=4
|
||||
toughness=1
|
||||
[/card]
|
||||
[card]
|
||||
name=Lobe Lobber
|
||||
auto={2}:equip
|
||||
auto=teach(creature) transforms((,newability[{T} restriction{type(planeswalker|battlefield)~morethan~0}:name(Damage planeswalker) name(Damage planeswalker) target(planeswalker) damage:1 && all(this) rolladie 5 winability untap winabilityend loseability if compare(lastrollresult)~equalto~6 then untap loseabilityend rollend],newability[{T}:name(Damage opponent) name(Damage opponent) damage:1 opponent && all(this) rolladie 5 winability untap winabilityend loseability if compare(lastrollresult)~equalto~6 then untap loseabilityend rollend],newability[{T}:name(Damage controller) name(Damage controller) damage:1 controller && all(this) rolladie 5 winability untap winabilityend loseability if compare(lastrollresult)~equalto~6 then untap loseabilityend rollend]))
|
||||
text=Equipped creature has " {T}: This creature deals 1 damage to target player or planeswalker. Roll a six-sided die. On a 5 or higher, untap it." -- Equip {2}
|
||||
mana={2}
|
||||
type=Artifact
|
||||
subtype=Equipment
|
||||
[/card]
|
||||
[card]
|
||||
name=Loch Dragon
|
||||
abilities=flying
|
||||
auto=may ability$!name(discard) reject notatarget(*|myhand) and!(draw:1)! !$ controller
|
||||
@@ -27650,6 +27927,19 @@ power=1
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Mad Science Fair Project
|
||||
auto={T}:all(this) rolladie 6 winability counter(0/0,1,MadEffect) winabilityend loseability counter(0/0,1,MadEffect) loseabilityend rollend
|
||||
auto=@dierolled(this) result(1) from(controller):this(counter{0/0.1.MadEffect}=1) ability$!name(Add colorless) name(Add colorless) add{C}!$ controller && counter(0/0,-1,MadEffect) all(this)
|
||||
auto=@dierolled(this) result(2) from(controller):this(counter{0/0.1.MadEffect}=1) ability$!name(Add colorless) name(Add colorless) add{C}!$ controller && counter(0/0,-1,MadEffect) all(this)
|
||||
auto=@dierolled(this) result(3) from(controller):this(counter{0/0.1.MadEffect}=1) ability$!name(Add colorless) name(Add colorless) add{C}!$ controller && counter(0/0,-1,MadEffect) all(this)
|
||||
auto=@dierolled(this) result(4) from(controller):this(counter{0/0.1.MadEffect}=1) ability$!name(Add any color) choice name(Add White) add{W} _ choice name(Add Blue) add{U} _ choice name(Add Black) add{B} _ choice name(Add Red) add{R} _ choice name(Add Green) add{G}!$ controller && counter(0/0,-1,MadEffect) all(this)
|
||||
auto=@dierolled(this) result(5) from(controller):this(counter{0/0.1.MadEffect}=1) ability$!name(Add any color) choice name(Add White) add{W} _ choice name(Add Blue) add{U} _ choice name(Add Black) add{B} _ choice name(Add Red) add{R} _ choice name(Add Green) add{G}!$ controller && counter(0/0,-1,MadEffect) all(this)
|
||||
auto=@dierolled(this) result(6) from(controller):this(counter{0/0.1.MadEffect}=1) ability$!name(Add any color) choice name(Add White) add{W} _ choice name(Add Blue) add{U} _ choice name(Add Black) add{B} _ choice name(Add Red) add{R} _ choice name(Add Green) add{G}!$ controller && counter(0/0,-1,MadEffect) all(this)
|
||||
text={T}: Roll a six-sided die. On a 3 or lower, target player adds {1} . Otherwise, that player adds one mana of any color they choose.
|
||||
mana={3}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
name=Maddening Cacophony
|
||||
kicker={3}{U}
|
||||
auto=if paid(kicker) then deplete:halfuptype:*:opponentLibrary opponent
|
||||
@@ -29064,6 +29354,16 @@ mana={2}{B}
|
||||
type=Sorcery
|
||||
[/card]
|
||||
[card]
|
||||
name=Mindblade Render
|
||||
auto=@combatdamagefoeof(player) from(*[warrior]|battlefield):draw:1 controller && life:-1 controller
|
||||
text=Whenever your opponents are dealt combat damage, if any of that damage was dealt by a Warrior, you draw a card and you lose 1 life.
|
||||
mana={1}{B}
|
||||
type=Creature
|
||||
subtype=Azra Warrior
|
||||
power=1
|
||||
toughness=3
|
||||
[/card]
|
||||
[card]
|
||||
name=Mindleecher
|
||||
abilities=flying,mutate
|
||||
otherrestriction=type(creature[-human]|mybattlefield)~morethan~0
|
||||
@@ -29709,6 +30009,16 @@ power=2
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Mother Kangaroo
|
||||
auto=all(this) rolladie 6 winability counter(1/1,lastrollresult) winabilityend loseability counter(1/1,lastrollresult) loseabilityend rollend
|
||||
text=When this creature enters the battlefield, roll a six-sided die. Put a number of +1/+1 counters on this creature equal to the result.
|
||||
mana={4}{G}
|
||||
type=Host Creature
|
||||
subtype=Kangaroo
|
||||
power=1
|
||||
toughness=1
|
||||
[/card]
|
||||
[card]
|
||||
name=Mounted Archers
|
||||
abilities=reach
|
||||
text=Reach (This creature can block creatures with flying.) -- {W}: Mounted Archers can block an additional creature this turn.
|
||||
@@ -31486,6 +31796,16 @@ power=2
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Numbing Jellyfish
|
||||
auto=all(this) rolladie 6 winability deplete:lastrollresult opponent winabilityend loseability deplete:lastrollresult opponent loseabilityend rollend
|
||||
text=When this creature enters the battlefield, roll a six-sided die. Target player puts the top X cards of their library into their graveyard, where X is the result.
|
||||
mana={3}{U}
|
||||
type=Host Creature
|
||||
subtype=Jellyfish
|
||||
power=2
|
||||
toughness=3
|
||||
[/card]
|
||||
[card]
|
||||
name=Nurturing Peatland
|
||||
auto={T}{L:1}:Add{G}
|
||||
auto={T}{L:1}:Add{B}
|
||||
@@ -32966,6 +33286,16 @@ mana={2}{B}
|
||||
type=Sorcery
|
||||
[/card]
|
||||
[card]
|
||||
name=Painiac
|
||||
auto=@each my upkeep:all(this) rolladie 6 winability lastrollresult/0 ueot winabilityend loseability lastrollresult/0 ueot loseabilityend rollend
|
||||
text=At the beginning of your upkeep, roll a six-sided die. Painiac gets +X/+0 until end of turn, where X is the result.
|
||||
mana={2}{R}
|
||||
type=Creature
|
||||
subtype=Brainiac
|
||||
power=0
|
||||
toughness=3
|
||||
[/card]
|
||||
[card]
|
||||
name=Painted Bluffs
|
||||
auto={T}:Add{1}
|
||||
auto={1}{T}:add{G}
|
||||
@@ -33932,6 +34262,15 @@ power=1
|
||||
toughness=3
|
||||
[/card]
|
||||
[card]
|
||||
name=Pir's Whim
|
||||
aicode=activate moveTo(myBattlefield) and!(tap(noevent))! target(land|myLibrary)
|
||||
auto=name(Search land) reveal:plibrarycount optionone name(choose card) target(land|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=ability$!name(Sacrifice artifact or enchantment) name(Sacrifice artifact or enchantment) target(*[artifact;enchantment]|mybattlefield) sacrifice!$ opponent
|
||||
text=For each player, choose friend or foe. Each friend searches their library for a land card, puts it onto the battlefield tapped, then shuffles their library. Each foe sacrifices an artifact or enchantment they control.
|
||||
mana={3}{G}
|
||||
type=Sorcery
|
||||
[/card]
|
||||
[card]
|
||||
name=Pirate Pur
|
||||
abilities=cantblock
|
||||
auto=all(creature|mybattlefield) mustattack
|
||||
@@ -34298,6 +34637,16 @@ mana={X}{B}
|
||||
type=Sorcery
|
||||
[/card]
|
||||
[card]
|
||||
name=Poultrygeist
|
||||
abilities=flying
|
||||
auto=this(counter{1/1.1}>0) transforms((Creature Summon Chicken,setpower=0,settoughness=0)) forever
|
||||
auto=@movedto(creature|graveyard) from(battlefield):may name(Roll a die) name(Roll a die) all(this) rolladie 1 winability sacrifice winabilityend loseability counter(1/1) loseabilityend rollend
|
||||
text=Flying -- Whenever a creature is put into any graveyard from play, you may roll a six-sided die. On a 1, sacrifice Poultrygeist. Otherwise, put a +1/+1 counter on Poultrygeist.
|
||||
mana={2}{B}
|
||||
type=Summon
|
||||
subtype=Chicken
|
||||
[/card]
|
||||
[card]
|
||||
name=Pounce
|
||||
target=creature|myBattlefield
|
||||
auto=transforms((,newability[target(creature) dynamicability<!powerstrike eachother!>])) ueot
|
||||
@@ -36567,7 +36916,7 @@ auto=@each endofturn restriction{compare(lifegain)~morethan~0}:create(warrior:cr
|
||||
text=Partner with Krav, the Unredeemed (When this creature enters the battlefield, target player may put Krav into their hand from their library, then shuffle.) -- Flying -- At the beginning of each end step, if your team gained life this turn, create two 1/1 white Warrior creature tokens.
|
||||
mana={5}{W}
|
||||
type=Legendary Creature
|
||||
subtype=Angel
|
||||
subtype=Angel Regna
|
||||
power=4
|
||||
toughness=4
|
||||
[/card]
|
||||
@@ -40346,6 +40695,13 @@ power=3
|
||||
toughness=3
|
||||
[/card]
|
||||
[card]
|
||||
name=Sentinel Tower
|
||||
auto=@movedTo(*[instant;sorcery]|stack) restriction{myturnonly}:name(Damage any target) name(Damage any target) ability$!name(Choose one) choice name(Damage player) damage:type:*[sorcery;instant;fresh]:graveyardplus1plusend target(player) _ choice name(Damage creature) damage:type:*[sorcery;instant;fresh]:graveyardplus1plusend target(creature) _ choice name(Damage planeswalker) damage:type:*[sorcery;instant;fresh]:graveyardplus1plusend target(planeswalker)!$ controller
|
||||
text=Whenever an instant or sorcery spell is cast during your turn, Sentinel Tower deals damage to any target equal to 1 plus the number of instant and sorcery spells cast before that spell this turn.
|
||||
mana={4}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
name=Sentinel's Eyes
|
||||
target=creature
|
||||
auto=vigilance
|
||||
@@ -42734,6 +43090,17 @@ power=0
|
||||
toughness=0
|
||||
[/card]
|
||||
[card]
|
||||
name=Sly Spy (f)
|
||||
auto=@combatdamagefoeof(player) from(this):all(this) rolladie 6 winability life:-lastrollresult opponent winabilityend loseability life:-lastrollresult opponent loseabilityend rollend
|
||||
auto=@combatdamageof(player) from(this):all(this) rolladie 6 winability life:-lastrollresult controller winabilityend loseability life:-lastrollresult controller loseabilityend rollend
|
||||
text=Whenever Sly Spy deals combat damage to a player, roll a six-sided die. That player loses life equal to the result.
|
||||
mana={2}{B}
|
||||
type=Creature
|
||||
subtype=Human Spy
|
||||
power=2
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Smelt-Ward Ignus
|
||||
auto={2}{R}{S}:auto=target(creature[power<=3]|battlefield) transforms((,newability[moveTo(opponentbattlefield)],newability[phaseaction[endofturn sourceinplay] moveTo(ownerbattlefield)],newability[untap],haste)) ueot asSorcery
|
||||
text={2}{R}, Sacrifice Smelt-Ward Ignus: Gain control of target creature with power 3 or less until end of turn. Untap that creature. It gains haste until end of turn. Activate this ability only any time you could cast a sorcery.
|
||||
@@ -44897,8 +45264,8 @@ toughness=4
|
||||
[card]
|
||||
name=Steel Squirrel
|
||||
auto={6}:all(this) rolladie 6 winability donothing winabilityend loseability donothing loseabilityend rollend
|
||||
auto=@dierolled(creature|battlefield) result(5):name(Get 5/5) name(Get 5/5) 5/5 ueot
|
||||
auto=@dierolled(creature|battlefield) result(6):name(Get 6/6) name(Get 6/6) 6/6 ueot
|
||||
auto=@dierolled(*|battlefield) result(5) from(controller):name(Get 5/5) name(Get 5/5) 5/5 ueot
|
||||
auto=@dierolled(*|battlefield) result(6) from(controller):name(Get 6/6) name(Get 6/6) 6/6 ueot
|
||||
text=Whenever you roll a 5 or higher on a die, Steel Squirrel gets +X/+X until end of turn, where X is the result. -- {6}: Roll a six-sided die.
|
||||
mana={2}
|
||||
type=Artifact Creature
|
||||
@@ -45082,6 +45449,15 @@ mana={X}{U}{U}
|
||||
type=Sorcery
|
||||
[/card]
|
||||
[card]
|
||||
name=Stolen Strategy
|
||||
auto=@each my upkeep:all(*[zpos=1]|opponentlibrary) moveto(exile) and!( transforms((,newability[counter(0/0.1.StolenExiled)])) forever )!
|
||||
auto={0}:name(Cast instants exiled with Stolen Strategy) name(Cast instants exiled with Stolen Strategy) target(<anyamount>instant[fresh;counter{0/0.1.StolenExiled}]|opponentexile) activate castcard(normal)
|
||||
auto={0}:name(Cast sorceries exiled with Stolen Strategy) name(Cast sorceries exiled with Stolen Strategy) target(<anyamount>sorcery[fresh;counter{0/0.1.StolenExiled}]|opponentexile) activate castcard(normal)
|
||||
text=At the beginning of your upkeep, exile the top card of each opponent's library. Until end of turn, you may cast spells from among those exiled cards, and you may spend mana as though it were mana of any color to cast those spells.
|
||||
mana={4}{R}
|
||||
type=Enchantment
|
||||
[/card]
|
||||
[card]
|
||||
name=Stone Haven Pilgrim
|
||||
auto=@combat(attacking) source(this) restriction{type(*[artifact;enchantment]|myBattlefield)~morethan~0}:1/1 ueot && lifelink ueot
|
||||
text=Whenever Stone Haven Pilgrim attacks, if you control an artifact or enchantment, Stone Haven Pilgrim gets +1/+1 and gains lifelink until end of turn.
|
||||
@@ -45116,7 +45492,7 @@ toughness=2
|
||||
[card]
|
||||
name=Stonework Packbeast
|
||||
auto=becomes(Cleric Rogue Warrior Wizard)
|
||||
auto={2}:ability$! name(Add any color) choice name(Add White) add{W} _ choice name(Add Blue) add{B} _ choice name(Add Black) add{B} _ choice name(Add Red) add{R} _ choice name(Add Green) add{G}!$ controller
|
||||
auto={2}:ability$! name(Add any color) choice name(Add White) add{W} _ choice name(Add Blue) add{U} _ choice name(Add Black) add{B} _ choice name(Add Red) add{R} _ choice name(Add Green) add{G}!$ controller
|
||||
text=Stonework Packbeast is also a Cleric, Rogue, Warrior, and Wizard. -- {2}: Add one mana of any color.
|
||||
mana={2}
|
||||
type=Artifact Creature
|
||||
@@ -47510,6 +47886,16 @@ type=Enchantment
|
||||
subtype=Saga
|
||||
[/card]
|
||||
[card]
|
||||
name=The Big Idea
|
||||
auto={2}{BR}{BR}{T}:all(this) rolladie 6 winability token(Brainiac,Creature Brainiac,1/1,red)*lastrollresult winabilityend loseability token(Brainiac,Creature Brainiac,1/1,red)*lastrollresult loseabilityend rollend
|
||||
text={2}{BR}{BR}, {T}: Roll a six-sided die. Create a number of 1/1 red Brainiac creature tokens equal to the result. -- Tap three untapped Brainiacs you control: The next time you would roll a six-sided die, instead roll two six-sided dice and use the total of those results.
|
||||
mana={4}{R}{R}
|
||||
type=Legendary Creature
|
||||
subtype=Brainiac Villain
|
||||
power=4
|
||||
toughness=4
|
||||
[/card]
|
||||
[card]
|
||||
name=The Binding of the Titans
|
||||
auto=counter(0/0,1,Lore)
|
||||
auto=@each my firstmain:counter(0/0,1,Lore)
|
||||
@@ -48604,6 +48990,13 @@ text={T}: Add {G}.
|
||||
type=Land
|
||||
[/card]
|
||||
[card]
|
||||
name=Time Out
|
||||
auto=target(*[-land]|battlefield) rolladie 6 winability moveto(ownerlibrary) and!(shuffle)! winabilityend loseability moveto(ownerlibrary) and!(shuffle)! loseabilityend rollend
|
||||
text=Roll a six-sided die. Put target nonland permanent into its owner's library just beneath the top X cards of that library, where X is the result.
|
||||
mana={4}{U}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
name=Time Vault
|
||||
abilities=doesnotuntap
|
||||
auto=tap(noevent)
|
||||
@@ -50794,6 +51187,21 @@ mana={4}{W}
|
||||
type=Legendary Sorcery
|
||||
[/card]
|
||||
[card]
|
||||
name=Urza's Science Fair Project
|
||||
auto={2}:all(this) rolladie 6 winability counter(0/0,1,UrzaEffect) winabilityend loseability counter(0/0,1,UrzaEffect) loseabilityend rollend
|
||||
auto=@dierolled(this) result(1) from(controller):this(counter{0/0.1.UrzaEffect}=1) name(Gets -2/-2) name(Gets -2/-2) all(this) transforms((,newability[-2/-2],newability[counter(0/0.-1.UrzaEffect)])) ueot
|
||||
auto=@dierolled(this) result(2) from(controller):this(counter{0/0.1.UrzaEffect}=1) name(It deals no combat damage) name(It deals no combat damage) all(this) transforms((,newability[preventAllCombatDamage from(this)],newability[counter(0/0.-1.UrzaEffect)])) ueot
|
||||
auto=@dierolled(this) result(3) from(controller):this(counter{0/0.1.UrzaEffect}=1) name(Gains vigilance) name(Gains vigilance) all(this) transforms((,newability[vigilance],newability[counter(0/0.-1.UrzaEffect)])) ueot
|
||||
auto=@dierolled(this) result(4) from(controller):this(counter{0/0.1.UrzaEffect}=1) name(Gains first strike) name(Gains first strike) all(this) transforms((,newability[first strike],newability[counter(0/0.-1.UrzaEffect)])) ueot
|
||||
auto=@dierolled(this) result(5) from(controller):this(counter{0/0.1.UrzaEffect}=1) name(Gains flying) name(Gains flying) all(this) transforms((,newability[flying],newability[counter(0/0.-1.UrzaEffect)])) ueot
|
||||
auto=@dierolled(this) result(6) from(controller):this(counter{0/0.1.UrzaEffect}=1) name(Gets 2/2) name(Gets 2/2) all(this) transforms((,newability[2/2],newability[counter(0/0.-1.UrzaEffect)])) ueot
|
||||
text={2}: Roll a six-sided die for Urza's Science Fair Project. -- 1 It gets -2/-2 until end of turn. -- 2 It deals no combat damage this turn. -- 3 Attacking does not cause it to tap this turn. -- 4 It gains first strike until end of turn. -- 5 It gains flying until end of turn. -- 6 It gets +2/+2 until end of turn.
|
||||
mana={6}
|
||||
type=Artifact Creature
|
||||
power=4
|
||||
toughness=4
|
||||
[/card]
|
||||
[card]
|
||||
name=Urza's Tome
|
||||
auto={3}{T}:draw:1 && transforms((,newability[target(*|myhand) reject])) forever
|
||||
auto={3}{T} restriction{type(*[artifact;legendary;saga]|mygraveyard)~morethan~0}:draw:1 && exile notatarget(*[artifact;legendary;saga]|mygraveyard)
|
||||
@@ -51831,6 +52239,14 @@ mana={3}{R}
|
||||
type=Sorcery
|
||||
[/card]
|
||||
[card]
|
||||
name=Virtus's Maneuver
|
||||
auto=ability$!name(Return to hand) name(Return to hand) target(creature|mygraveyard) moveto(ownerhand)!$ opponent
|
||||
auto=ability$!name(Sacrifice creature) name(Sacrifice creature) target(creature|mybattlefield) sacrifice!$ opponent
|
||||
text=For each player, choose friend or foe. Each friend returns a creature card from their graveyard to their hand. Each foe sacrifices a creature they control.
|
||||
mana={2}{B}
|
||||
type=Sorcery
|
||||
[/card]
|
||||
[card]
|
||||
name=Virtus the Veiled
|
||||
abilities=deathtouch,partner
|
||||
auto=may moveto(myhand) notatarget(gorm the great|mylibrary)
|
||||
@@ -53308,9 +53724,9 @@ type=Instant
|
||||
name=Willing Test Subject
|
||||
abilities=reach
|
||||
auto={6}:all(this) rolladie 6 winability donothing winabilityend loseability donothing loseabilityend rollend
|
||||
auto=@dierolled(creature|battlefield) result(4):name(Get 1/1 counter) name(Get 1/1 counter) counter(1/1) all(this)
|
||||
auto=@dierolled(creature|battlefield) result(5):name(Get 1/1 counter) name(Get 1/1 counter) counter(1/1) all(this)
|
||||
auto=@dierolled(creature|battlefield) result(6):name(Get 1/1 counter) name(Get 1/1 counter) counter(1/1) all(this)
|
||||
auto=@dierolled(*|battlefield) result(4) from(controller):name(Get 1/1 counter) name(Get 1/1 counter) counter(1/1) all(this)
|
||||
auto=@dierolled(*|battlefield) result(5) from(controller):name(Get 1/1 counter) name(Get 1/1 counter) counter(1/1) all(this)
|
||||
auto=@dierolled(*|battlefield) result(6) from(controller):name(Get 1/1 counter) name(Get 1/1 counter) counter(1/1) all(this)
|
||||
text=Reach -- Whenever you roll a 4 or higher on a die, put a +1/+1 counter on Willing Test Subject. -- {6}: Roll a six-sided die.
|
||||
mana={2}{G}
|
||||
type=Creature
|
||||
@@ -54311,6 +54727,14 @@ power=2
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Zndrsplt's Judgment
|
||||
auto=ability$!name(Create a token copy) name(Create a token copy) target(creature|mybattlefield) clone!$ controller
|
||||
auto=ability$!name(Return to hand) name(Return to hand) target(creature|mybattlefield) moveto(ownerhand)!$ opponent
|
||||
text=For each player, choose friend or foe. Each friend creates a token that's a copy of a creature they control. Each foe returns a creature they control to its owner's hand.
|
||||
mana={4}{U}
|
||||
type=Sorcery
|
||||
[/card]
|
||||
[card]
|
||||
name=Zof Bloodbog
|
||||
auto=tap(noevent)
|
||||
auto={T}:add{B}
|
||||
|
||||
@@ -133,15 +133,6 @@ power=2
|
||||
toughness=1
|
||||
[/card]
|
||||
[card]
|
||||
name=Adorable Kitten
|
||||
text=When this creature enters the battlefield, roll a six-sided die. You gain life equal to the result.
|
||||
mana={W}
|
||||
type=Host Creature
|
||||
subtype=Cat
|
||||
power=1
|
||||
toughness=1
|
||||
[/card]
|
||||
[card]
|
||||
name=Adriana's Valor
|
||||
text=Hidden agenda (Start the game with this conspiracy face down in the command zone and secretly name a card. You may turn this conspiracy face up any time and reveal the chosen name.) -- Whenever a creature you control with the chosen name attacks, you may pay {W}. If you do, that creature gains indestructible until end of turn. (Damage and effects that say "destroy" don't destroy it.)
|
||||
type=Conspiracy
|
||||
@@ -1081,15 +1072,6 @@ mana={G}{W}
|
||||
type=Sorcery
|
||||
[/card]
|
||||
[card]
|
||||
name=Big Boa Constrictor
|
||||
text=When this creature enters the battlefield, roll a six-sided die. Target opponent loses life equal to the result.
|
||||
mana={3}{B}
|
||||
type=Host Creature
|
||||
subtype=Snake
|
||||
power=1
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Bind
|
||||
text=Counter target activated ability. (Mana abilities can't be targeted.) -- Draw a card.
|
||||
mana={1}{G}
|
||||
@@ -1328,6 +1310,12 @@ mana={X}{X}{R}
|
||||
type=Sorcery
|
||||
[/card]
|
||||
[card]
|
||||
name=Bonus Round
|
||||
text=Until end of turn, whenever a player casts an instant or sorcery spell, that player copies it and may choose new targets for the copy.
|
||||
mana={1}{R}{R}
|
||||
type=Sorcery
|
||||
[/card]
|
||||
[card]
|
||||
name=Booby Trap
|
||||
text=As Booby Trap enters the battlefield, name a card other than a basic land card and choose an opponent. -- The chosen player reveals each card he or she draws. -- When the chosen player draws the named card, sacrifice Booby Trap. If you do, Booby Trap deals 10 damage to that player.
|
||||
mana={6}
|
||||
@@ -1430,12 +1418,6 @@ mana={3}{G}{G}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
name=Box of Free-Range Goblins
|
||||
text=Roll a six-sided die. Create a number of 1/1 red Goblin creature tokens equal to the result.
|
||||
mana={4}{R}{R}
|
||||
type=Sorcery
|
||||
[/card]
|
||||
[card]
|
||||
name=Brago's Favor
|
||||
text=Hidden agenda (Start the game with this conspiracy face down in the command zone and secretly name a card. You may turn this conspiracy face up any time and reveal the chosen name.) -- Spells with the chosen name you cast cost {1} less to cast.
|
||||
type=Conspiracy
|
||||
@@ -1993,6 +1975,15 @@ mana={2}{R}{R}
|
||||
type=Enchantment
|
||||
[/card]
|
||||
[card]
|
||||
name=Chancellor of the Annex
|
||||
text=You may reveal this card from your opening hand. If you do, when each opponent casts his or her first spell of the game, counter that spell unless that player pays {1}. -- Flying -- Whenever an opponent casts a spell, counter it unless that player pays {1}.
|
||||
mana={4}{W}{W}{W}
|
||||
type=Creature
|
||||
subtype=Angel
|
||||
power=5
|
||||
toughness=6
|
||||
[/card]
|
||||
[card]
|
||||
name=Chancellor of the Dross
|
||||
text=You may reveal this card from your opening hand. If you do, at the beginning of the first upkeep, each opponent loses 3 life, then you gain life equal to the life lost this way. -- Flying, lifelink
|
||||
mana={4}{B}{B}{B}
|
||||
@@ -2020,15 +2011,6 @@ power=5
|
||||
toughness=7
|
||||
[/card]
|
||||
[card]
|
||||
name=Chancellor of the Tangle
|
||||
text=You may reveal this card from your opening hand. If you do, at the beginning of your first main phase, add {G} to your mana pool. -- Vigilance, reach
|
||||
mana={4}{G}{G}{G}
|
||||
type=Creature
|
||||
subtype=Beast
|
||||
power=6
|
||||
toughness=7
|
||||
[/card]
|
||||
[card]
|
||||
name=Chandra's Incinerator
|
||||
text=This spell costs {X} less to cast, where X is the total amount of noncombat damage dealt to your opponents this turn. -- Trample -- Whenever a source you control deals noncombat damage to an opponent, Chandra's Incinerator deals that much damage to target creature or planeswalker that player controls.
|
||||
mana={5}{R}
|
||||
@@ -2126,29 +2108,6 @@ mana={2}{U}
|
||||
type=Enchantment
|
||||
[/card]
|
||||
[card]
|
||||
name=Chicken Egg
|
||||
text=During your upkeep, roll a six-sided die. On a 6, sacrifice Chicken Egg and put a Giant Chicken token into play. Treat this token as a 4/4 red creature that counts as a Chicken.
|
||||
mana={1}{R}
|
||||
type=Summon
|
||||
subtype=Egg
|
||||
[/card]
|
||||
[card]
|
||||
name=Chicken a la King
|
||||
text=Whenever a 6 is rolled on a six-sided die, put a +1/+1 counter on each Chicken in play. (You may roll dice only when a card instructs you to.) -- Tap a Chicken you control: Roll a six-sided die.
|
||||
mana={1}{U}{U}
|
||||
type=Summon
|
||||
subtype=Chicken
|
||||
[/card]
|
||||
[card]
|
||||
name=Chicken à la King
|
||||
text=Whenever a 6 is rolled on a six-sided die, put a +1/+1 counter on each Bird. (You may roll dice only when instructed to.) -- Tap an untapped Bird you control: Roll a six-sided die. (Like now.)
|
||||
mana={1}{U}{U}
|
||||
type=Creature
|
||||
subtype=Bird
|
||||
power=2
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Chipper Chopper
|
||||
text=Flying -- When Chipper Chopper enters the battlefield, you may sacrifice another artifact. If you do, put two +1/+1 counters on Chipper Chopper and it assembles a Contraption. (Put the top card of your Contraption deck face up onto one of your sprockets.)
|
||||
mana={3}{U}
|
||||
@@ -3685,13 +3644,6 @@ power=*
|
||||
toughness=*
|
||||
[/card]
|
||||
[card]
|
||||
name=Elvish Impersonators
|
||||
text=When you play Elvish Impersonators, roll two six-sided dice one after the other. Elvish Impersonators comes into play with power equal to the first die roll and toughness equal to the second.
|
||||
mana={3}{G}
|
||||
type=Summon
|
||||
subtype=Elves
|
||||
[/card]
|
||||
[card]
|
||||
name=Emblazoned Golem
|
||||
text=Kicker {X} (You may pay an additional {X} as you cast this spell.) -- Spend only colored mana on X. No more than one mana of each color may be spent this way. -- If Emblazoned Golem was kicked, it enters the battlefield with X +1/+1 counters on it.
|
||||
mana={2}
|
||||
@@ -4632,6 +4584,12 @@ mana={2}{W}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
name=Fumble
|
||||
text=Return target creature to its owner's hand. Gain control of all Auras and Equipment that were attached to it, then attach them to another creature.
|
||||
mana={1}{U}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
name=Fungal Behemoth
|
||||
text=Fungal Behemoth's power and toughness are each equal to the number of +1/+1 counters on creatures you control. -- Suspend X—{X}{G}{G}. X can't be 0. (Rather than cast this card from your hand, you may pay {X}{G}{G} and exile it with X time counters on it. At the beginning of your upkeep, remove a time counter. When the last is removed, cast it without paying its mana cost. It has haste.) -- Whenever a time counter is removed from Fungal Behemoth while it's exiled, you may put a +1/+1 counter on target creature.
|
||||
mana={3}{G}
|
||||
@@ -4716,25 +4674,9 @@ power=3
|
||||
toughness=1
|
||||
[/card]
|
||||
[card]
|
||||
name=Garbage Elemental (c)
|
||||
text=Battle cry (Whenever this creature attacks, each other attacking creature gets +1/+0 until end of turn.) -- When Garbage Elemental enters the battlefield, roll two six-sided dice. Create a number of 1/1 red Goblin creature tokens equal to the difference between those results.
|
||||
mana={4}{R}
|
||||
type=Creature
|
||||
subtype=Elemental
|
||||
power=3
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Garbage Elemental (d)
|
||||
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.) -- When Garbage Elemental enters the battlefield, roll a six-sided die. Garbage Elemental deals damage equal to the result to target opponent or planeswalker.
|
||||
mana={4}{R}
|
||||
type=Creature
|
||||
subtype=Elemental
|
||||
power=3
|
||||
toughness=3
|
||||
[/card]
|
||||
[card]
|
||||
name=Garbage Elemental (e)
|
||||
auto=may counter(1/1) all(this)
|
||||
auto=this(counter{1/1.1}>0) cantblock
|
||||
text=Unleash (You may have this creature enter the battlefield with a +1/+1 counter on it. It can't block as long as it has a +1/+1 counter on it.) -- Each creature you control with any kind of counter on it has art menace. (They can't be blocked except by creatures with two or more visible figures in their art.)
|
||||
mana={4}{R}
|
||||
type=Creature
|
||||
@@ -5165,13 +5107,6 @@ type=Summon
|
||||
subtype=Goblin
|
||||
[/card]
|
||||
[card]
|
||||
name=Goblin Bowling Team
|
||||
text=Whenever Goblin Bowling Team damages any creature or player, roll a six-sided die. Goblin Bowling Team deals to that creature or player additional damage equal to the die roll.
|
||||
mana={3}{R}
|
||||
type=Summon
|
||||
subtype=Goblins
|
||||
[/card]
|
||||
[card]
|
||||
name=Goblin Charbelcher
|
||||
text={3}, {T}: Reveal cards from the top of your library until you reveal a land card. Goblin Charbelcher deals damage equal to the number of nonland cards revealed this way to target creature or player. If the revealed land card was a Mountain, Goblin Charbelcher deals double that damage instead. Put the revealed cards on the bottom of your library in any order.
|
||||
mana={4}
|
||||
@@ -5263,37 +5198,12 @@ power=1
|
||||
toughness=1
|
||||
[/card]
|
||||
[card]
|
||||
name=Goblin Test Pilot
|
||||
abilities=flying
|
||||
text=Flying -- {T}: Goblin Test Pilot deals 2 damage to target creature or player chosen at random.
|
||||
mana={1}{U}{R}
|
||||
type=Creature
|
||||
subtype=Goblin Wizard
|
||||
power=0
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Goblin Tutor
|
||||
text=Roll a six-sided die for Goblin Tutor. On a 1, Goblin Tutor has no effect. Otherwise, search your library for the indicated card, reveal that card to all players, and put it into your hand. Shuffle your library afterwards. -- 2 Any Goblin Tutor -- 3 Any enchantment -- 4 Any artifact -- 5 Any creature -- 6 Any sorcery, instant, or interrupt
|
||||
mana={R}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
name=Goblin War Cry
|
||||
text=Target opponent chooses a creature he or she controls. Other creatures he or she controls can't block this turn.
|
||||
mana={2}{R}
|
||||
type=Sorcery
|
||||
[/card]
|
||||
[card]
|
||||
name=Godo's Irregulars
|
||||
text={R}: Godo's Irregulars deals 1 damage to target creature blocking it.
|
||||
mana={R}
|
||||
type=Creature
|
||||
subtype=Human Warrior
|
||||
power=1
|
||||
toughness=1
|
||||
[/card]
|
||||
[card]
|
||||
name=Godsend
|
||||
text=Equipped creature gets +3/+3. -- Whenever equipped creature blocks or becomes blocked by one or more creatures, you may exile one of those creatures. -- Opponents can't cast cards with the same name as cards exiled with Godsend. -- Equip {3}
|
||||
mana={1}{W}{W}
|
||||
@@ -5491,18 +5401,21 @@ mana={4}{R}{R}
|
||||
type=Enchantment
|
||||
[/card]
|
||||
[card]
|
||||
name=Grothama, All-Devouring
|
||||
text=Other creatures have "Whenever this creature attacks, you may have it fight Grothama, All-Devouring." -- When Grothama leaves the battlefield, each player draws cards equal to the amount of damage dealt to Grothama this turn by sources they controlled.
|
||||
mana={3}{G}{G}
|
||||
type=Legendary Creature
|
||||
subtype=Wurm
|
||||
power=10
|
||||
toughness=8
|
||||
[/card]
|
||||
[card]
|
||||
name=Grove of the Dreampods
|
||||
text=When you planeswalk to Grove of the Dreampods or at the beginning of your upkeep, reveal cards from the top of your library until you reveal a creature card. Put that card onto the battlefield and the rest on the bottom of your library in a random order. -- Whenever you roll {K}, return target creature card from your graveyard to the battlefield.
|
||||
type=Plane
|
||||
subtype=Fabacin
|
||||
[/card]
|
||||
[card]
|
||||
name=Growth Spurt
|
||||
text=Roll a six-sided die. Target creature gets +X/+X until end of turn, where X is equal to the die roll.
|
||||
mana={1}{G}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
name=Grudge Keeper
|
||||
text=Whenever players finish voting, each opponent who voted for a choice you didn't vote for loses 2 life.
|
||||
mana={1}{B}
|
||||
@@ -5687,12 +5600,6 @@ text=Cumulative upkeep {1} (At the beginning of your upkeep, put an age counter
|
||||
type=Land
|
||||
[/card]
|
||||
[card]
|
||||
name=Hammer Helper
|
||||
text=Gain control of target creature until end of turn. Untap that creature and roll a six-sided die. Until end of turn, it gains haste and gets +X/+0, where X is the result.
|
||||
mana={3}{R}
|
||||
type=Sorcery
|
||||
[/card]
|
||||
[card]
|
||||
name=Hammerfest Boomtacular
|
||||
text=Whenever you cast a spell with a Goblin Explosioneers watermark, Hammerfest Boomtacular deals 2 damage to any target.
|
||||
mana={3}{R}{R}
|
||||
@@ -6137,15 +6044,6 @@ power=2
|
||||
toughness=1
|
||||
[/card]
|
||||
[card]
|
||||
name=Hydradoodle
|
||||
text=As Hydradoodle enters the battlefield, roll X six-sided dice. Hydradoodle enters the battlefield with a number of +1/+1 counters on it equal to the total of those results. -- Reach, trample
|
||||
mana={X}{X}{G}{G}
|
||||
type=Creature
|
||||
subtype=Hydra Hound
|
||||
power=0
|
||||
toughness=0
|
||||
[/card]
|
||||
[card]
|
||||
name=Hymn of the Wilds
|
||||
text=(Start the game with this conspiracy face up in the command zone.) -- The first creature spell you cast each turn costs {1} less to cast. -- You can't cast instant or sorcery spells.
|
||||
type=Conspiracy
|
||||
@@ -6538,15 +6436,6 @@ type=Artifact
|
||||
subtype=Contraption
|
||||
[/card]
|
||||
[card]
|
||||
name=Inhumaniac
|
||||
text=At the beginning of your upkeep, roll a six-sided die. On a 3 or 4, put a +1/+1 counter on Inhumaniac. On a 5 or higher, put two +1/+1 counters on it. On a 1, remove all +1/+1 counters from Inhumaniac.
|
||||
mana={1}{B}
|
||||
type=Creature
|
||||
subtype=Brainiac
|
||||
power=1
|
||||
toughness=1
|
||||
[/card]
|
||||
[card]
|
||||
name=Ink-Treader Nephilim
|
||||
text=Whenever a player casts an instant or sorcery spell, if Ink-Treader Nephilim is the only target of that spell, copy the spell for each other creature that spell could target. Each copy targets a different one of those creatures.
|
||||
mana={R}{G}{W}{U}
|
||||
@@ -6716,12 +6605,6 @@ mana={3}{W}{W}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
name=Jack-in-the-Mox
|
||||
text={T}: Roll a six-sided die for Jack-in-the-Mox. On a 1, sacrifice Jack-in-the-Mox and lose 5 life. Otherwise, Jack-in-the-Mox has one of the following effects. Treat this ability as a mana source. -- 2 Add {W} to your mana pool. -- 3 Add {U} to your mana pool. -- 4 Add {B} to your mana pool. -- 5 Add {R} to your mana pool. -- 6 Add {G} to your mana pool.
|
||||
mana={0}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
name=Jackknight
|
||||
text=Whenever another artifact enters the battlefield under your control, put a +1/+1 counter on Jackknight. If that artifact is a Contraption, Jackknight gains lifelink until end of turn.
|
||||
mana={1}{W}
|
||||
@@ -6857,13 +6740,6 @@ power=3
|
||||
toughness=3
|
||||
[/card]
|
||||
[card]
|
||||
name=Jumbo Imp
|
||||
text=Flying -- When you play Jumbo Imp, roll a six-sided die. Jumbo Imp comes into play with a number of +1/+1 counters on it equal to the die roll. -- During your upkeep, roll a six-sided die and put on Jumbo Imp a number of +1/+1 counters equal to the die roll. -- At the end of your turn, roll a six-sided die and remove from Jumbo Imp a number of +1/+1 counters equal to the die roll.
|
||||
mana={2}{B}
|
||||
type=Summon
|
||||
subtype=Imp
|
||||
[/card]
|
||||
[card]
|
||||
name=Just Desserts
|
||||
text=Just Desserts deals p damage to target creature. (p is the ratio of a circle's circumference to its diameter. (It's a smidgen more than 3.) )
|
||||
mana={1}{R}
|
||||
@@ -7323,13 +7199,6 @@ mana={2}
|
||||
type=Legendary Artifact
|
||||
[/card]
|
||||
[card]
|
||||
name=Krazy Kow
|
||||
text=During your upkeep, roll a six-sided die. On a 1, sacrifice Krazy Kow and it deals 3 damage to each creature and player.
|
||||
mana={3}{R}
|
||||
type=Summon
|
||||
subtype=Cow
|
||||
[/card]
|
||||
[card]
|
||||
name=Kresh the Bloodbraided
|
||||
text=Whenever another creature dies, you may put X +1/+1 counters on Kresh the Bloodbraided, where X is that creature's power.
|
||||
mana={2}{B}{R}{G}
|
||||
@@ -7742,13 +7611,6 @@ power=*
|
||||
toughness=*
|
||||
[/card]
|
||||
[card]
|
||||
name=Lobe Lobber
|
||||
text=Equipped creature has " {T}: This creature deals 1 damage to target player or planeswalker. Roll a six-sided die. On a 5 or higher, untap it." -- Equip {2}
|
||||
mana={2}
|
||||
type=Artifact
|
||||
subtype=Equipment
|
||||
[/card]
|
||||
[card]
|
||||
name=Locket of Yesterdays
|
||||
text=Spells you cast cost {1} less to cast for each card with the same name as that spell in your graveyard.
|
||||
mana={1}
|
||||
@@ -7853,12 +7715,6 @@ power=3
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Mad Science Fair Project
|
||||
text={T}: Roll a six-sided die. On a 3 or lower, -- target player adds {1} . Otherwise, that player adds one mana of any color they choose.
|
||||
mana={3}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
name=Maddening Imp
|
||||
abilities=flying
|
||||
text=Flying -- {T}: Non-Wall creatures the active player controls attack this turn if able. At the beginning of the next end step, destroy each of those creatures that didn't attack this turn. Activate this ability only during an opponent's turn and only before combat.
|
||||
@@ -8688,15 +8544,6 @@ text=Hideaway (This land enters the battlefield tapped. When it does, look at th
|
||||
type=Land
|
||||
[/card]
|
||||
[card]
|
||||
name=Mother Kangaroo
|
||||
text=When this creature enters the battlefield, roll a six-sided die. Put a number of +1/+1 counters on this creature equal to the result.
|
||||
mana={4}{G}
|
||||
type=Host Creature
|
||||
subtype=Kangaroo
|
||||
power=1
|
||||
toughness=1
|
||||
[/card]
|
||||
[card]
|
||||
name=Mother of Goons
|
||||
text=Whenever a creature an opponent controls is put into a graveyard from play, sacrifice Mother of Goons unless you insult that creature.
|
||||
mana={2}{B}
|
||||
@@ -9219,15 +9066,6 @@ mana={2}{U}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
name=Numbing Jellyfish
|
||||
text=When this creature enters the battlefield, roll a six-sided die. Target player puts the top X cards of their library into their graveyard, where X is the result.
|
||||
mana={3}{U}
|
||||
type=Host Creature
|
||||
subtype=Jellyfish
|
||||
power=2
|
||||
toughness=3
|
||||
[/card]
|
||||
[card]
|
||||
name=Nurturing Licid
|
||||
text={G}, {T}: Nurturing Licid loses this ability and becomes an Aura enchantment with enchant creature. Attach it to target creature. You may pay {G} to end this effect. -- {G}: Regenerate enchanted creature.
|
||||
mana={1}{G}
|
||||
@@ -9341,6 +9179,15 @@ power=4
|
||||
toughness=4
|
||||
[/card]
|
||||
[card]
|
||||
name=Okaun, Eye of Chaos
|
||||
text=Partner with Zndrsplt, Eye of Wisdom (When this creature enters the battlefield, target player may put Zndrsplt into their hand from their library, then shuffle.) -- At the beginning of combat on your turn, flip a coin until you lose a flip. -- Whenever a player wins a coin flip, double Okaun's power and toughness until end of turn.
|
||||
mana={4}{R}
|
||||
type=Legendary Creature
|
||||
subtype=Cyclops Berserker
|
||||
power=3
|
||||
toughness=3
|
||||
[/card]
|
||||
[card]
|
||||
name=Okk
|
||||
text=Okk can't attack unless a creature with greater power also attacks. -- Okk can't block unless a creature with greater power also blocks.
|
||||
mana={1}{R}
|
||||
@@ -9623,15 +9470,6 @@ mana={2}{B}
|
||||
type=Sorcery
|
||||
[/card]
|
||||
[card]
|
||||
name=Painiac
|
||||
text=At the beginning of your upkeep, roll a six-sided die. Painiac gets +X/+0 until end of turn, where X is the result.
|
||||
mana={2}{R}
|
||||
type=Creature
|
||||
subtype=Brainiac
|
||||
power=0
|
||||
toughness=3
|
||||
[/card]
|
||||
[card]
|
||||
name=Paliano Vanguard
|
||||
text=Draft Paliano Vanguard face up. -- As you draft a creature card, you may reveal it, note its creature types, then turn Paliano Vanguard face down. -- Other creatures you control of a type you noted for cards named Paliano Vanguard get +1/+1.
|
||||
mana={1}{W}
|
||||
@@ -9933,6 +9771,16 @@ power=2
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Pir, Imaginative Rascal
|
||||
auto=may name(Put partner on your hand) name(Put partner on your hand) moveto(myhand) target(Toothy, Imaginary Friend|mylibrary)
|
||||
text=Partner with Toothy, Imaginary Friend (When this creature enters the battlefield, target player may put Toothy into their hand from their library, then shuffle.) -- If one or more counters would be put on a permanent your team controls, that many plus one of each of those kinds of counters are put on that permanent instead.
|
||||
mana={2}{G}
|
||||
type=Legendary Creature
|
||||
subtype=Human
|
||||
power=1
|
||||
toughness=1
|
||||
[/card]
|
||||
[card]
|
||||
name=Piracy
|
||||
text=Until end of turn, you may tap lands you don't control for mana. Spend this mana only to cast spells.
|
||||
mana={U}{U}
|
||||
@@ -10077,13 +9925,6 @@ mana={3}{R}{R}
|
||||
type=Enchantment
|
||||
[/card]
|
||||
[card]
|
||||
name=Poultrygeist
|
||||
text=Flying -- Whenever a creature is put into any graveyard from play, you may roll a six-sided die. On a 1, sacrifice Poultrygeist. Otherwise, put a +1/+1 counter on Poultrygeist.
|
||||
mana={2}{B}
|
||||
type=Summon
|
||||
subtype=Chicken
|
||||
[/card]
|
||||
[card]
|
||||
name=Power Artifact
|
||||
text=Enchant artifact -- Enchanted artifact's activated abilities cost {2} less to activate. This effect can't reduce the amount of mana an ability costs to activate to less than one mana.
|
||||
mana={U}{U}
|
||||
@@ -12092,15 +11933,6 @@ power=2
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Sly Spy (f)
|
||||
text=Whenever Sly Spy deals combat damage to a player, roll a six-sided die. That player loses life equal to the result.
|
||||
mana={2}{B}
|
||||
type=Creature
|
||||
subtype=Human Spy
|
||||
power=2
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Smart Ass
|
||||
text=Whenever Smart Ass attacks, name a card. Defending player may reveal his or her hand and show you that the named card isn't there. If that player doesn't, Smart Ass is unblockable this turn.
|
||||
mana={2}{U}
|
||||
@@ -12908,6 +12740,12 @@ power=2
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Stunning Reversal
|
||||
text=The next time you would lose the game this turn, instead draw seven cards and your life total becomes 1. -- Exile Stunning Reversal.
|
||||
mana={3}{B}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
name=Subcontract
|
||||
text=A person outside the game looks at target opponent's hand and chooses a nonland card from it. That player discards that card.
|
||||
mana={B}
|
||||
@@ -13321,15 +13159,6 @@ type=Plane
|
||||
subtype=Iquatana
|
||||
[/card]
|
||||
[card]
|
||||
name=The Big Idea
|
||||
text={2}{B} or {R}{B} or {R}, {T}: Roll a six-sided die. Create a number of 1/1 red Brainiac creature tokens equal to the result. -- Tap three untapped Brainiacs you control: The next time you would roll a six-sided die, instead roll two six-sided dice and use the total of those results.
|
||||
mana={4}{R}{R}
|
||||
type=Legendary Creature
|
||||
subtype=Brainiac Villain
|
||||
power=4
|
||||
toughness=4
|
||||
[/card]
|
||||
[card]
|
||||
name=The Chain Veil
|
||||
text=At the beginning of your end step, if you didn't activate a loyalty ability of a planeswalker this turn, you lose 2 life. -- {4}, {T}: For each planeswalker you control, you may activate one of its loyalty abilities once this turn as though none of its loyalty abilities have been activated this turn.
|
||||
mana={4}
|
||||
@@ -13670,12 +13499,6 @@ mana={5}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
name=Time Out
|
||||
text=Roll a six-sided die. Put target nonland permanent into its owner's library just beneath the top X cards of that library, where X is the result.
|
||||
mana={4}{U}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
name=Time Stop
|
||||
text=End the turn. (Exile all spells and abilities on the stack, including this card. The player whose turn it is discards down to his or her maximum hand size. Damage wears off, and "this turn" and "until end of turn" effects end.)
|
||||
mana={4}{U}{U}
|
||||
@@ -14080,14 +13903,6 @@ mana={2}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
name=Urza's Science Fair Project
|
||||
text={2}: Roll a six-sided die for Urza's Science Fair Project. -- 1 It gets -2/-2 until end of turn. -- 2 It deals no combat damage this turn. -- 3 Attacking does not cause it to tap this turn. -- 4 It gains first strike until end of turn. -- 5 It gains flying until end of turn. -- 6 It gets +2/+2 until end of turn.
|
||||
mana={6}
|
||||
type=Artifact Creature
|
||||
power=4
|
||||
toughness=4
|
||||
[/card]
|
||||
[card]
|
||||
name=Urza, Academy Headmaster
|
||||
text=+1: Head to AskUrza.com and click +1. -- -1: Head to AskUrza.com and click -1. -- -6: Head to AskUrza.com and click -6.
|
||||
mana={W}{U}{B}{R}{G}
|
||||
@@ -15145,6 +14960,15 @@ power=3
|
||||
toughness=3
|
||||
[/card]
|
||||
[card]
|
||||
name=Zndrsplt, Eye of Wisdom
|
||||
text=Partner with Okaun, Eye of Chaos (When this creature enters the battlefield, target player may put Okaun into their hand from their library, then shuffle.) -- At the beginning of combat on your turn, flip a coin until you lose a flip. -- Whenever a player wins a coin flip, draw a card.
|
||||
mana={4}{U}
|
||||
type=Legendary Creature
|
||||
subtype=Homunculus
|
||||
power=1
|
||||
toughness=4
|
||||
[/card]
|
||||
[card]
|
||||
name=Zombie Fanboy
|
||||
text=As Zombie Fanboy comes into play, choose an artist. -- Whenever a permanent by the chosen artist is put into a graveyard, put two +1/+1 counters on Zombie Fanboy.
|
||||
mana={2}{B}
|
||||
|
||||
@@ -733,6 +733,10 @@ private:
|
||||
{
|
||||
intValue = (s == "lastrollresult")?target->lastRollResult:target->dieSide;
|
||||
}
|
||||
else if(s == "lastflipresult" || s == "lastflipchoice")
|
||||
{
|
||||
intValue = (s == "lastflipresult")?target->lastFlipResult:target->coinSide;
|
||||
}
|
||||
else if (s == "pdrewcount" || s == "odrewcount")
|
||||
{
|
||||
intValue = (s == "pdrewcount")?target->controller()->drawCounter:target->controller()->opponent()->drawCounter;
|
||||
@@ -1768,8 +1772,9 @@ public:
|
||||
bool limitOnceATurn;
|
||||
int triggeredTurn;
|
||||
int rollresult;
|
||||
TrCardRolledDie(GameObserver* observer, int id, MTGCardInstance * source, TargetChooser * tc, bool once = false, bool limitOnceATurn = false, int rollresult = 0) :
|
||||
Trigger(observer, id, source,once, tc),limitOnceATurn(limitOnceATurn), rollresult(rollresult)
|
||||
string playerName;
|
||||
TrCardRolledDie(GameObserver* observer, int id, MTGCardInstance * source, TargetChooser * tc, bool once = false, bool limitOnceATurn = false, int rollresult = 0, string playerName = "") :
|
||||
Trigger(observer, id, source,once, tc),limitOnceATurn(limitOnceATurn), rollresult(rollresult), playerName(playerName)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -1781,6 +1786,8 @@ public:
|
||||
return 0;
|
||||
if (rollresult > 0 && rollresult != e->card->lastRollResult)
|
||||
return 0;
|
||||
if (playerName != "" && playerName != e->playerName)
|
||||
return 0;
|
||||
if (!tc->canTarget(e->card)) return 0;
|
||||
triggeredTurn = game->turn;
|
||||
return 1;
|
||||
@@ -1792,6 +1799,39 @@ public:
|
||||
}
|
||||
};
|
||||
|
||||
class TrCardFlippedCoin: public Trigger
|
||||
{
|
||||
public:
|
||||
bool limitOnceATurn;
|
||||
int triggeredTurn;
|
||||
int flipresult;
|
||||
string playerName;
|
||||
TrCardFlippedCoin(GameObserver* observer, int id, MTGCardInstance * source, TargetChooser * tc, bool once = false, bool limitOnceATurn = false, int flipresult = -1, string playerName = "") :
|
||||
Trigger(observer, id, source,once, tc),limitOnceATurn(limitOnceATurn), flipresult(flipresult), playerName(playerName)
|
||||
{
|
||||
}
|
||||
|
||||
int triggerOnEventImpl(WEvent * event)
|
||||
{
|
||||
WEventCardFlipCoin * e = dynamic_cast<WEventCardFlipCoin *> (event);
|
||||
if (!e) return 0;
|
||||
if (limitOnceATurn && triggeredTurn == game->turn)
|
||||
return 0;
|
||||
if (flipresult > -1 && flipresult != e->card->lastFlipResult)
|
||||
return 0;
|
||||
if (playerName != "" && playerName != e->playerName)
|
||||
return 0;
|
||||
if (!tc->canTarget(e->card)) return 0;
|
||||
triggeredTurn = game->turn;
|
||||
return 1;
|
||||
}
|
||||
|
||||
TrCardFlippedCoin * clone() const
|
||||
{
|
||||
return NEW TrCardFlippedCoin(*this);
|
||||
}
|
||||
};
|
||||
|
||||
class TrTokenCreated: public Trigger
|
||||
{
|
||||
public:
|
||||
|
||||
@@ -113,6 +113,7 @@ public:
|
||||
int chooseacolor;
|
||||
string chooseasubtype;
|
||||
int coinSide;//1 = tails
|
||||
int lastFlipResult;
|
||||
int dieSide;
|
||||
int lastRollResult;
|
||||
|
||||
|
||||
@@ -345,7 +345,7 @@ struct WEventCardCopiedACard : public WEventCardUpdate {
|
||||
|
||||
//alterenergy event
|
||||
struct WEventplayerEnergized : public WEvent {
|
||||
WEventplayerEnergized(Player * player,int nb_count);
|
||||
WEventplayerEnergized(Player * player, int nb_count);
|
||||
Player * player;
|
||||
int nb_count;
|
||||
using WEvent::getTarget;
|
||||
@@ -368,7 +368,15 @@ struct WEventCardSurveiled : public WEventCardUpdate {
|
||||
|
||||
//roll die event
|
||||
struct WEventCardRollDie : public WEventCardUpdate {
|
||||
WEventCardRollDie(MTGCardInstance * card);
|
||||
string playerName;
|
||||
WEventCardRollDie(MTGCardInstance * card, string playerName);
|
||||
virtual Targetable * getTarget(int target);
|
||||
};
|
||||
|
||||
//flip coin event
|
||||
struct WEventCardFlipCoin : public WEventCardUpdate {
|
||||
string playerName;
|
||||
WEventCardFlipCoin(MTGCardInstance * card, string playerName);
|
||||
virtual Targetable * getTarget(int target);
|
||||
};
|
||||
|
||||
|
||||
@@ -2731,6 +2731,9 @@ int AASetCoin::resolve()
|
||||
_target->coinSide = side;
|
||||
|
||||
int flip = game->getRandomGenerator()->random() % 2;
|
||||
_target->lastFlipResult = flip;
|
||||
WEvent * e = NEW WEventCardFlipCoin(_target, source->controller()->getDisplayName());
|
||||
game->receiveEvent(e);
|
||||
vector<string>Win = parseBetween(abilityToAlter,"winability "," winabilityend");
|
||||
if(Win.size())
|
||||
{
|
||||
@@ -2881,7 +2884,7 @@ int AASetDie::resolve()
|
||||
|
||||
int roll = 1 + game->getRandomGenerator()->random() % 6;
|
||||
_target->lastRollResult = roll;
|
||||
WEvent * e = NEW WEventCardRollDie(_target);
|
||||
WEvent * e = NEW WEventCardRollDie(_target, source->controller()->getDisplayName());
|
||||
game->receiveEvent(e);
|
||||
vector<string>Win = parseBetween(abilityToAlter,"winability "," winabilityend");
|
||||
if(Win.size())
|
||||
@@ -2894,6 +2897,7 @@ int AASetDie::resolve()
|
||||
abilityLose = Lose[1];
|
||||
}
|
||||
|
||||
std::stringstream msg;
|
||||
if(abilityWin.size() && roll == side)
|
||||
{
|
||||
AbilityFactory af(game);
|
||||
@@ -2908,13 +2912,15 @@ int AASetDie::resolve()
|
||||
{
|
||||
abilityAltered->addToGame();
|
||||
}
|
||||
MTGAbility * message = NEW MTGEventText(game,this->GetId(), source, "You Won The Die Roll");
|
||||
msg << "Result is: " << roll << ". You Won The Die Roll";
|
||||
MTGAbility * message = NEW MTGEventText(game,this->GetId(), source, msg.str());
|
||||
message->oneShot = true;
|
||||
message->addToGame();
|
||||
}
|
||||
else if(abilityWin.size() && !abilityLose.size())
|
||||
{
|
||||
MTGAbility * message = NEW MTGEventText(game,this->GetId(), source, "You Lost The Die Roll");
|
||||
msg << "Result is: " << roll << ". You Lost The Die Roll";
|
||||
MTGAbility * message = NEW MTGEventText(game,this->GetId(), source, msg.str());
|
||||
message->oneShot = true;
|
||||
message->addToGame();
|
||||
}
|
||||
@@ -2932,13 +2938,15 @@ int AASetDie::resolve()
|
||||
{
|
||||
abilityAltered->addToGame();
|
||||
}
|
||||
MTGAbility * message = NEW MTGEventText(game,this->GetId(), source, "You Lost The Die Roll");
|
||||
msg << "Result is: " << roll << ". You Lost The Die Roll";
|
||||
MTGAbility * message = NEW MTGEventText(game,this->GetId(), source, msg.str());
|
||||
message->oneShot = true;
|
||||
message->addToGame();
|
||||
}
|
||||
else if(abilityLose.size())
|
||||
{
|
||||
MTGAbility * message = NEW MTGEventText(game,this->GetId(), source, "You Won The Die Roll");
|
||||
msg << "Result is: " << roll << ". You Won The Die Roll";
|
||||
MTGAbility * message = NEW MTGEventText(game,this->GetId(), source, msg.str());
|
||||
message->oneShot = true;
|
||||
message->addToGame();
|
||||
}
|
||||
@@ -2948,17 +2956,9 @@ int AASetDie::resolve()
|
||||
|
||||
const string AASetDie::getMenuText()
|
||||
{
|
||||
if(side == 1)
|
||||
return "Your choice is 1";
|
||||
if(side == 2)
|
||||
return "Your choice is 2";
|
||||
if(side == 3)
|
||||
return "Your choice is 3";
|
||||
if(side == 4)
|
||||
return "Your choice is 4";
|
||||
if(side == 5)
|
||||
return "Your choice is 5";
|
||||
return "Your choice is 6";
|
||||
std::stringstream msg;
|
||||
msg << "Your choice is: " << side;
|
||||
return msg.str();
|
||||
}
|
||||
|
||||
AASetDie * AASetDie::clone() const
|
||||
|
||||
@@ -1030,17 +1030,35 @@ void GameObserver::gameStateBasedEffects()
|
||||
c->Provoker = NULL;
|
||||
}
|
||||
|
||||
MTGGameZone * f = p->game->graveyard;
|
||||
for (int k = 0; k < f->nb_cards; k++)
|
||||
MTGGameZone * fg = p->game->graveyard;
|
||||
for (int k = 0; k < fg->nb_cards; k++)
|
||||
{
|
||||
MTGCardInstance * card = f->cards[k];
|
||||
card->fresh = 0;
|
||||
MTGCardInstance * card = fg->cards[k];
|
||||
card->fresh = 0; // Remove fresh attribute to cards put in graveyard last turn
|
||||
}
|
||||
MTGGameZone * fe = p->game->exile;
|
||||
for (int k = 0; k < fe->nb_cards; k++)
|
||||
{
|
||||
MTGCardInstance * card = fe->cards[k]; // Remove fresh attribute to previous exiled cards
|
||||
card->fresh = 0;
|
||||
MTGCardInstance * card = fe->cards[k];
|
||||
card->fresh = 0; // Remove fresh attribute to cards put in exile last turn
|
||||
}
|
||||
MTGGameZone * fh = p->game->hand;
|
||||
for (int k = 0; k < fh->nb_cards; k++)
|
||||
{
|
||||
MTGCardInstance * card = fh->cards[k];
|
||||
card->fresh = 0; // Remove fresh attribute to cards put in hand last turn
|
||||
}
|
||||
MTGGameZone * fc = p->game->commandzone;
|
||||
for (int k = 0; k < fc->nb_cards; k++)
|
||||
{
|
||||
MTGCardInstance * card = fc->cards[k];
|
||||
card->fresh = 0; // Remove fresh attribute to cards put in commandzone last turn
|
||||
}
|
||||
MTGGameZone * fl = p->game->commandzone;
|
||||
for (int k = 0; k < fl->nb_cards; k++)
|
||||
{
|
||||
MTGCardInstance * card = fl->cards[k];
|
||||
card->fresh = 0; // Remove fresh attribute to cards put in library last turn
|
||||
}
|
||||
}
|
||||
if (z->nb_cards == 0)
|
||||
|
||||
@@ -1229,7 +1229,33 @@ TriggeredAbility * AbilityFactory::parseTrigger(string s, string, int id, Spell
|
||||
if(res.size()){
|
||||
rollresult = atoi(res[1].c_str());
|
||||
}
|
||||
return NEW TrCardRolledDie(observer, id, card, tc, once, limitOnceATurn, rollresult);
|
||||
string playerName = "";
|
||||
vector<string>from = parseBetween(s, "from(",")");
|
||||
if(from.size() && from[1] == "opponent"){
|
||||
playerName = card->controller()->opponent()->getDisplayName();
|
||||
} else if(from.size() && from[1] == "controller"){
|
||||
playerName = card->controller()->getDisplayName();
|
||||
}
|
||||
return NEW TrCardRolledDie(observer, id, card, tc, once, limitOnceATurn, rollresult, playerName);
|
||||
}
|
||||
|
||||
//Fip coin has been performed from a card
|
||||
if (TargetChooser * tc = parseSimpleTC(s, "coinflipped", card)){
|
||||
int flipresult = -1;
|
||||
vector<string>res = parseBetween(s, "result(",")");
|
||||
if(res.size() && res[1] == "head"){
|
||||
flipresult = 0;
|
||||
} else if(res.size() && (res[1] == "tails" || res[1] == "tail")){
|
||||
flipresult = 1;
|
||||
}
|
||||
string playerName = "";
|
||||
vector<string>from = parseBetween(s, "from(",")");
|
||||
if(from.size() && from[1] == "opponent"){
|
||||
playerName = card->controller()->opponent()->getDisplayName();
|
||||
} else if(from.size() && from[1] == "controller"){
|
||||
playerName = card->controller()->getDisplayName();
|
||||
}
|
||||
return NEW TrCardFlippedCoin(observer, id, card, tc, once, limitOnceATurn, flipresult, playerName);
|
||||
}
|
||||
|
||||
//Token has been created
|
||||
|
||||
@@ -262,6 +262,7 @@ void MTGCardInstance::initMTGCI()
|
||||
chooseacolor = -1;
|
||||
chooseasubtype = "";
|
||||
coinSide = -1;
|
||||
lastFlipResult = -1;
|
||||
dieSide = 0;
|
||||
lastRollResult = 0;
|
||||
isAttacking = NULL;
|
||||
|
||||
@@ -3311,6 +3311,10 @@ int MTGUnearthRule::receiveEvent(WEvent * event)
|
||||
{
|
||||
e->card->fresh = 1;
|
||||
}
|
||||
if (e->from == e->card->controller()->game->stack && e->to == e->card->controller()->game->graveyard) // Apply fresh attribute for new casted spells
|
||||
{
|
||||
e->card->fresh = 1;
|
||||
}
|
||||
if (e->to == e->card->controller()->game->battlefield)
|
||||
{
|
||||
e->card->fresh = 1;
|
||||
@@ -3320,6 +3324,18 @@ int MTGUnearthRule::receiveEvent(WEvent * event)
|
||||
{
|
||||
e->card->fresh = 1;
|
||||
}
|
||||
if (e->to == e->card->controller()->game->hand) // Apply fresh attribute for cards just put in hand
|
||||
{
|
||||
e->card->fresh = 1;
|
||||
}
|
||||
if (e->to == e->card->controller()->game->commandzone) // Apply fresh attribute for cards just put in commandzone
|
||||
{
|
||||
e->card->fresh = 1;
|
||||
}
|
||||
if (e->to == e->card->controller()->game->library) // Apply fresh attribute for cards just put in library
|
||||
{
|
||||
e->card->fresh = 1;
|
||||
}
|
||||
|
||||
if (card && card->basicAbilities[(int)Constants::UNEARTH])
|
||||
{
|
||||
|
||||
@@ -297,8 +297,13 @@ WEventCardSurveiled::WEventCardSurveiled(MTGCardInstance * card) :
|
||||
{
|
||||
}
|
||||
|
||||
WEventCardRollDie::WEventCardRollDie(MTGCardInstance * card) :
|
||||
WEventCardUpdate(card)
|
||||
WEventCardRollDie::WEventCardRollDie(MTGCardInstance * card, string playerName) :
|
||||
WEventCardUpdate(card), playerName(playerName)
|
||||
{
|
||||
}
|
||||
|
||||
WEventCardFlipCoin::WEventCardFlipCoin(MTGCardInstance * card, string playerName) :
|
||||
WEventCardUpdate(card), playerName(playerName)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -527,6 +532,12 @@ Targetable * WEventCardRollDie::getTarget(int target)
|
||||
return NULL;
|
||||
}
|
||||
|
||||
Targetable * WEventCardFlipCoin::getTarget(int target)
|
||||
{
|
||||
if (target) return card;
|
||||
return NULL;
|
||||
}
|
||||
|
||||
Targetable * WEventTokenCreated::getTarget(int target)
|
||||
{
|
||||
if (target) return card;
|
||||
|
||||
Reference in New Issue
Block a user