diff --git a/projects/mtg/bin/Res/sets/mtg_todo.dat b/projects/mtg/bin/Res/sets/mtg_todo.dat index c9fb7729b..c51281ee7 100644 --- a/projects/mtg/bin/Res/sets/mtg_todo.dat +++ b/projects/mtg/bin/Res/sets/mtg_todo.dat @@ -296,12 +296,6 @@ power=2 toughness=1 [/card] [card] -name=Addle -text=Choose a color. Target player reveals his or her hand and you choose a card of that color from it. That player discards that card. -mana={1}{B} -type=Sorcery -[/card] -[card] name=Admonition Angel text=Flying -- Landfall - Whenever a land enters the battlefield under your control, you may exile target nonland permanent other than Admonition Angel. -- When Admonition Angel leaves the battlefield, return all cards exiled with it to the battlefield under their owners' control. mana={3}{W}{W}{W} @@ -2325,7 +2319,7 @@ toughness=3 [card] name=Bargaining Table text={X}, {T}: Draw a card. X is the number of cards in an opponent's hand as you activate this ability. -mana={5} +mana={1} type=Artifact [/card] [card] @@ -2842,12 +2836,6 @@ mana={3}{B}{R} type=Instant [/card] [card] -name=Black Mana Battery -text={2}, {T}: Put a charge counter on Black Mana Battery. -- {T}, Remove any number of charge counters from Black Mana Battery: Add {B} to your mana pool, then add an additional {B} to your mana pool for each charge counter removed this way. -mana={4} -type=Artifact -[/card] -[card] name=Blackmail text=Target player reveals three cards from his or her hand and you choose one of them. That player discards that card. mana={B} @@ -2865,15 +2853,6 @@ type=Artifact subtype=Equipment [/card] [card] -name=Blademane Baku -text=Whenever you cast a Spirit or Arcane spell, you may put a ki counter on Blademane Baku. -- {1}, Remove X ki counters from Blademane Baku: For each counter removed, Blademane Baku gets +2/+0 until end of turn. -mana={1}{R} -type=Creature -subtype=Spirit -power=1 -toughness=1 -[/card] -[card] name=Blades of Velis Vel text=Changeling (This card is every creature type at all times.) -- Up to two target creatures each get +2/+0 and gain all creature types until end of turn. mana={1}{R} @@ -3245,12 +3224,6 @@ mana={2}{B} type=Enchantment [/card] [card] -name=Blue Mana Battery -text={2}, {T}: Put a charge counter on Blue Mana Battery. -- {T}, Remove any number of charge counters from Blue Mana Battery: Add {U} to your mana pool, then add an additional {U} to your mana pool for each charge counter removed this way. -mana={4} -type=Artifact -[/card] -[card] name=Body Snatcher text=When Body Snatcher enters the battlefield, you may discard a creature card. If you don't, exile Body Snatcher. -- When Body Snatcher is put into a graveyard from the battlefield, exile Body Snatcher and return target creature card from your graveyard to the battlefield. mana={2}{B}{B} @@ -3596,12 +3569,6 @@ mana={1}{B} type=Sorcery [/card] [card] -name=Brainbite -text=Target opponent reveals his or her hand. You choose a card from it. That player discards that card. -- Draw a card. -mana={2}{U}{B} -type=Sorcery -[/card] -[card] name=Brainspoil text=Destroy target creature that isn't enchanted. It can't be regenerated. -- Transmute {1}{B}{B} ({1}{B}{B}, Discard this card: Search your library for a card with the same converted mana cost as this card, reveal it, and put it into your hand. Then shuffle your library. Transmute only as a sorcery.) mana={3}{B}{B} @@ -3679,12 +3646,6 @@ power=2 toughness=2 [/card] [card] -name=Brave the Elements -text=Choose a color. White creatures you control gain protection from the chosen color until end of turn. -mana={W} -type=Instant -[/card] -[card] name=Brawl text=Until end of turn, all creatures gain "{T}: This creature deals damage equal to its power to target creature." mana={3}{R}{R} @@ -4648,12 +4609,6 @@ type=Enchantment subtype=Aura [/card] [card] -name=Castigate -text=Target opponent reveals his or her hand. You choose a nonland card from it and exile that card. -mana={W}{B} -type=Sorcery -[/card] -[card] name=Casting of Bones target=Creature auto=@movedTo(mytgt|graveyard):draw:3 controller @@ -5074,15 +5029,6 @@ power=4 toughness=4 [/card] [card] -name=Chameleon Spirit -text=As Chameleon Spirit enters the battlefield, choose a color. -- Chameleon Spirit's power and toughness are each equal to the number of permanents of the chosen color your opponents control. -mana={3}{U} -type=Creature -subtype=Illusion Spirit -power=* -toughness=* -[/card] -[card] name=Chance Encounter text=Whenever you win a coin flip, put a luck counter on Chance Encounter. -- At the beginning of your upkeep, if Chance Encounter has ten or more luck counters on it, you win the game. mana={2}{R}{R} @@ -5869,12 +5815,6 @@ type=Enchantment subtype=Aura [/card] [card] -name=Coercion -text=Target opponent reveals his or her hand. You choose a card from it. That player discards that card. -mana={2}{B} -type=Sorcery -[/card] -[card] name=Coffin Puppets text=Sacrifice two lands: Return Coffin Puppets from your graveyard to the battlefield. Activate this ability only during your upkeep and only if you control a Swamp. mana={3}{B}{B} @@ -5921,12 +5861,6 @@ mana={4} type=Artifact [/card] [card] -name=Coldsteel Heart -text=Coldsteel Heart enters the battlefield tapped. -- As Coldsteel Heart enters the battlefield, choose a color. -- {T}: Add one mana of the chosen color to your mana pool. -mana={2} -type=Snow Artifact -[/card] -[card] name=Colfenor's Plans text=When Colfenor's Plans enters the battlefield, exile the top seven cards of your library face down. -- You may look at and play cards exiled with Colfenor's Plans. -- Skip your draw step. -- You can't cast more than one spell each turn. mana={2}{B}{B} @@ -8600,12 +8534,6 @@ mana={X}{U}{U}{U} type=Sorcery [/card] [card] -name=Distress -text=Target player reveals his or her hand. You choose a nonland card from it. That player discards that card. -mana={B}{B} -type=Sorcery -[/card] -[card] name=Disturbed Burial text=Buyback {3} (You may pay an additional {3} as you cast this spell. If you do, put this card into your hand as it resolves.) -- Return target creature card from your graveyard to your hand. mana={1}{B} @@ -9326,12 +9254,6 @@ mana={3}{U}{U} type=Enchantment [/card] [card] -name=Duress -text=Target opponent reveals his or her hand. You choose a noncreature, nonland card from it. That player discards that card. -mana={B} -type=Sorcery -[/card] -[card] name=Durkwood Baloth text=Suspend 5 - {G} (Rather than cast this card from your hand, you may pay {G} and exile it with five 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.) mana={4}{G}{G} @@ -10068,12 +9990,6 @@ power=2 toughness=2 [/card] [card] -name=Encroach -text=Target player reveals his or her hand. You choose a nonbasic land card from it. That player discards that card. -mana={B} -type=Sorcery -[/card] -[card] name=Endbringer's Revel text={4}: Return target creature card from a graveyard to its owner's hand. Any player may activate this ability but only any time he or she could cast a sorcery. mana={2}{B} @@ -12517,11 +12433,6 @@ type=Enchantment subtype=Aura [/card] [card] -name=Fountain of Cho -text=Fountain of Cho enters the battlefield tapped. -- {T}: Put a storage counter on Fountain of Cho. -- {T}, Remove any number of storage counters from Fountain of Cho: Add {W} to your mana pool for each storage counter removed this way. -type=Land -[/card] -[card] name=Fractured Loyalty text=Enchant creature -- Whenever enchanted creature becomes the target of a spell or ability, that spell or ability's controller gains control of that creature. (This effect lasts indefinitely.) mana={1}{R} @@ -14654,12 +14565,6 @@ power=3 toughness=3 [/card] [card] -name=Green Mana Battery -text={2}, {T}: Put a charge counter on Green Mana Battery. -- {T}, Remove any number of charge counters from Green Mana Battery: Add {G} to your mana pool, then add an additional {G} to your mana pool for each charge counter removed this way. -mana={4} -type=Artifact -[/card] -[card] name=Greener Pastures text=At the beginning of each player's upkeep, if that player controls more lands than each other player, the player puts a 1/1 green Saproling creature token onto the battlefield. mana={2}{G} @@ -15474,15 +15379,6 @@ power=2 toughness=4 [/card] [card] -name=He Who Hungers -text=Flying -- {1}, Sacrifice a Spirit: Target opponent reveals his or her hand. You choose a card from it. That player discards that card. Activate this ability only any time you could cast a sorcery. -- Soulshift 4 (When this is put into a graveyard from the battlefield, you may return target Spirit card with converted mana cost 4 or less from your graveyard to your hand.) -mana={4}{B} -type=Legendary Creature -subtype=Spirit -power=3 -toughness=2 -[/card] -[card] name=Head Games text=Target opponent puts the cards from his or her hand on top of his or her library. Search that player's library for that many cards. The player puts those cards into his or her hand, then shuffles his or her library. mana={3}{B}{B} @@ -19100,12 +18996,6 @@ power=1 toughness=1 [/card] [card] -name=Kyren Toy -text={1}, {T}: Put a charge counter on Kyren Toy. -- {T}, Remove X charge counters from Kyren Toy: Add {X}{1} to your mana pool. -mana={3} -type=Artifact -[/card] -[card] name=Labyrinth Minotaur text=Whenever Labyrinth Minotaur blocks a creature, that creature doesn't untap during its controller's next untap step. mana={3}{U} @@ -21499,17 +21389,6 @@ mana={5} type=Artifact [/card] [card] -name=Mercadian Bazaar -text=Mercadian Bazaar enters the battlefield tapped. -- {T}: Put a storage counter on Mercadian Bazaar. -- {T}, Remove any number of storage counters from Mercadian Bazaar: Add {R} to your mana pool for each storage counter removed this way. -type=Land -[/card] -[card] -name=Mercadian Lift -text={1}, {T}: Put a winch counter on Mercadian Lift. -- {T}, Remove X winch counters from Mercadian Lift: You may put a creature card with converted mana cost X from your hand onto the battlefield. -mana={2} -type=Artifact -[/card] -[card] name=Mercenaries text={3}: Prevent all damage that would be dealt to you this turn by this creature. Any player may activate this ability. mana={3}{W} @@ -21916,20 +21795,11 @@ type=Sorcery [/card] [card] name=Mind Rot -target=player -auto=discard:2 -#No Discard unless random text=Target player discards two cards. mana={2}{B} type=Sorcery [/card] [card] -name=Mind Slash -text={B}, Sacrifice a creature: Target opponent reveals his or her hand. You choose a card from it. That player discards that card. Activate this ability only any time you could cast a sorcery. -mana={1}{B}{B} -type=Enchantment -[/card] -[card] name=Mind Sludge text=Target player discards a card for each Swamp you control. mana={4}{B} @@ -24908,15 +24778,6 @@ power=2 toughness=2 [/card] [card] -name=Order of the Stars -text=Defender (This creature can't attack.) -- As Order of the Stars enters the battlefield, choose a color. -- Order of the Stars has protection from the chosen color. -mana={W} -type=Creature -subtype=Human Cleric -power=0 -toughness=1 -[/card] -[card] name=Ordruun Commando text={W}: Prevent the next 1 damage that would be dealt to Ordruun Commando this turn. mana={3}{R} @@ -25048,12 +24909,6 @@ power=1 toughness=1 [/card] [card] -name=Ostracize -text=Target opponent reveals his or her hand. You choose a creature card from it. That player discards that card. -mana={B} -type=Sorcery -[/card] -[card] name=Otherworldly Journey text=Exile target creature. At the beginning of the next end step, return that card to the battlefield under its owner's control with a +1/+1 counter on it. mana={1}{W} @@ -25280,12 +25135,6 @@ power=1 toughness=1 [/card] [card] -name=Painful Memories -text=Look at target opponent's hand and choose a card from it. Put that card on top of that player's library. -mana={1}{B} -type=Sorcery -[/card] -[card] name=Painter's Servant text=As Painter's Servant enters the battlefield, choose a color. -- All cards that aren't on the battlefield, spells, and permanents are the chosen color in addition to their other colors. mana={2} @@ -25415,12 +25264,6 @@ type=Artifact subtype=Equipment [/card] [card] -name=Paradise Plume -text=As Paradise Plume enters the battlefield, choose a color. -- Whenever a player casts a spell of the chosen color, you may gain 1 life. -- {T}: Add one mana of the chosen color to your mana pool. -mana={4} -type=Artifact -[/card] -[card] name=Paradox Haze text=Enchant player -- At the beginning of enchanted player's first upkeep each turn, that player gets an additional upkeep step after this step. mana={2}{U} @@ -27262,12 +27105,6 @@ mana={U} type=Sorcery [/card] [card] -name=Psychic Spear -text=Target player reveals his or her hand. You choose a Spirit or Arcane card from it. That player discards that card. -mana={B} -type=Sorcery -[/card] -[card] name=Psychic Theft text=Target player reveals his or her hand. You choose an instant or sorcery card from it and exile that card. You may cast that card for as long as it remains exiled. At the beginning of the next end step, if you haven't cast the card, return it to its owner's hand. mana={1}{U} @@ -27822,15 +27659,6 @@ type=Artifact subtype=Equipment [/card] [card] -name=Quillmane Baku -text=Whenever you cast a Spirit or Arcane spell, you may put a ki counter on Quillmane Baku. -- {1}, {T}, Remove X ki counters from Quillmane Baku: Return target creature with converted mana cost X or less to its owner's hand. -mana={4}{U} -type=Creature -subtype=Spirit -power=3 -toughness=3 -[/card] -[card] name=Quillspike text={(b/g)}, Remove a -1/-1 counter from a creature you control: Quillspike gets +3/+3 until end of turn. mana={2}{BG} @@ -27840,15 +27668,6 @@ power=1 toughness=1 [/card] [card] -name=Quirion Elves -text=As Quirion Elves enters the battlefield, choose a color. -- {T}: Add {G} to your mana pool. -- {T}: Add one mana of the chosen color to your mana pool. -mana={1}{G} -type=Creature -subtype=Elf Druid -power=1 -toughness=1 -[/card] -[card] name=Quirion Explorer text={T}: Add to your mana pool one mana of any color that a land an opponent controls could produce. mana={1}{G} @@ -28583,12 +28402,6 @@ mana={4}{G}{G} type=Enchantment [/card] [card] -name=Red Mana Battery -text={2}, {T}: Put a charge counter on Red Mana Battery. -- {T}, Remove any number of charge counters from Red Mana Battery: Add {R} to your mana pool, then add an additional {R} to your mana pool for each charge counter removed this way. -mana={4} -type=Artifact -[/card] -[card] name=Redeem text=Prevent all damage that would be dealt this turn to up to two target creatures. mana={1}{W} @@ -30151,11 +29964,6 @@ power=3 toughness=3 [/card] [card] -name=Rushwood Grove -text=Rushwood Grove enters the battlefield tapped. -- {T}: Put a storage counter on Rushwood Grove. -- {T}, Remove any number of storage counters from Rushwood Grove: Add {G} to your mana pool for each storage counter removed this way. -type=Land -[/card] -[card] name=Rushwood Legate text=If an opponent controls an Island and you control a Forest, you may cast Rushwood Legate without paying its mana cost. mana={2}{G} @@ -30679,11 +30487,6 @@ power=3 toughness=3 [/card] [card] -name=Saprazzan Cove -text=Saprazzan Cove enters the battlefield tapped. -- {T}: Put a storage counter on Saprazzan Cove. -- {T}, Remove any number of storage counters from Saprazzan Cove: Add {U} to your mana pool for each storage counter removed this way. -type=Land -[/card] -[card] name=Saprazzan Heir text=Whenever Saprazzan Heir becomes blocked, you may draw three cards. mana={1}{U} @@ -30752,12 +30555,6 @@ subtype=Sarkhan loyalty=4 [/card] [card] -name=Sarpadian Empires, Vol. VII -text=As Sarpadian Empires, Vol. VII enters the battlefield, choose white Citizen, blue Camarid, black Thrull, red Goblin, or green Saproling. -- {3}, {T}: Put a 1/1 creature token of the chosen color and type onto the battlefield. -mana={3} -type=Artifact -[/card] -[card] name=Sasaya, Orochi Ascendant text=Reveal your hand: If you have seven or more land cards in your hand, flip Sasaya, Orochi Ascendant. mana={1}{G}{G} @@ -31282,12 +31079,6 @@ mana={1}{R}{W} type=Enchantment [/card] [card] -name=Searing Rays -text=Choose a color. Searing Rays deals damage to each player equal to the number of creatures of that color that player controls. -mana={2}{R} -type=Sorcery -[/card] -[card] name=Searing Spear Askari text=Flanking (Whenever a creature without flanking blocks this creature, the blocking creature gets -1/-1 until end of turn.) -- {1}{R}: Searing Spear Askari can't be blocked except by two or more creatures this turn. mana={2}{R} @@ -31963,12 +31754,6 @@ mana={X}{B}{B} type=Sorcery [/card] [card] -name=Shattered Dreams -text=Target opponent reveals his or her hand. You choose an artifact card from it. That player discards that card. -mana={B} -type=Sorcery -[/card] -[card] name=Shattering Pulse text=Buyback {3} (You may pay an additional {3} as you cast this spell. If you do, put this card into your hand as it resolves.) -- Destroy target artifact. mana={1}{R} @@ -32514,15 +32299,6 @@ power=1 toughness=2 [/card] [card] -name=Silhana Starfletcher -text=Reach (This creature can block creatures with flying.) -- As Silhana Starfletcher enters the battlefield, choose a color. -- {T}: Add one mana of the chosen color to your mana pool. -mana={2}{G} -type=Creature -subtype=Elf Druid Archer -power=1 -toughness=3 -[/card] -[card] name=Silhouette text=Prevent all damage that would be dealt to target creature this turn by spells or abilities that target it. mana={1}{U} @@ -32924,15 +32700,6 @@ mana={B} type=Sorcery [/card] [card] -name=Skullmane Baku -text=Whenever you cast a Spirit or Arcane spell, you may put a ki counter on Skullmane Baku. -- {1}, {T}, Remove X ki counters from Skullmane Baku: Target creature gets -X/-X until end of turn. -mana={3}{B}{B} -type=Creature -subtype=Spirit -power=2 -toughness=1 -[/card] -[card] name=Skullmulcher text=Devour 1 (As this enters the battlefield, you may sacrifice any number of creatures. This creature enters the battlefield with that many +1/+1 counters on it.) -- When Skullmulcher enters the battlefield, draw a card for each creature it devoured. mana={4}{G} @@ -33338,12 +33105,6 @@ power=3 toughness=3 [/card] [card] -name=Sol Grail -text=As Sol Grail enters the battlefield, choose a color. -- {T}: Add one mana of the chosen color to your mana pool. -mana={3} -type=Artifact -[/card] -[card] name=Solar Tide text=Choose one - Destroy all creatures with power 2 or less; or destroy all creatures with power 3 or greater. -- Entwine - Sacrifice two lands. (Choose both if you pay the entwine cost.) mana={4}{W}{W} @@ -35303,11 +35064,6 @@ mana={4}{U} type=Instant [/card] [card] -name=Subterranean Hangar -text=Subterranean Hangar enters the battlefield tapped. -- {T}: Put a storage counter on Subterranean Hangar. -- {T}, Remove any number of storage counters from Subterranean Hangar: Add {B} to your mana pool for each storage counter removed this way. -type=Land -[/card] -[card] name=Sudden Death text=Split second (As long as this spell is on the stack, players can't cast spells or activate abilities that aren't mana abilities.) -- Target creature gets -4/-4 until end of turn. mana={1}{B}{B} @@ -36257,12 +36013,6 @@ text=Phasing (This phases in or out before you untap during each of your untap s type=Legendary Land [/card] [card] -name=Teferi's Moat -text=As Teferi's Moat enters the battlefield, choose a color. -- Creatures of the chosen color without flying can't attack you. -mana={3}{W}{U} -type=Enchantment -[/card] -[card] name=Teferi's Puzzle Box text=At the beginning of each player's draw step, that player puts the cards in his or her hand on the bottom of his or her library in any order, then draws that many cards. mana={4} @@ -36939,12 +36689,6 @@ mana={2}{R}{R} type=Sorcery [/card] [card] -name=Thoughtseize -text=Target player reveals his or her hand. You choose a nonland card from it. That player discards that card. You lose 2 life. -mana={B} -type=Sorcery -[/card] -[card] name=Thoughtweft Trio text=First strike, vigilance -- Champion a Kithkin (When this enters the battlefield, sacrifice it unless you exile another Kithkin you control. When this leaves the battlefield, that card returns to the battlefield.) -- Thoughtweft Trio can block any number of creatures. mana={2}{W}{W} @@ -39325,15 +39069,6 @@ power=0 toughness=4 [/card] [card] -name=Voice of All -text=Flying (This creature can't be blocked except by creatures with flying or reach.) -- As Voice of All enters the battlefield, choose a color. -- Voice of All has protection from the chosen color. (It can't be blocked, targeted, dealt damage, or enchanted by anything of the chosen color.) -mana={2}{W}{W} -type=Creature -subtype=Angel -power=2 -toughness=2 -[/card] -[card] name=Voice of the Woods text=Tap five untapped Elves you control: Put a 7/7 green Elemental creature token with trample onto the battlefield. mana={3}{G}{G} @@ -39896,15 +39631,6 @@ power=1 toughness=1 [/card] [card] -name=Ward Sliver -text=As Ward Sliver enters the battlefield, choose a color. -- All Slivers have protection from the chosen color. -mana={4}{W} -type=Creature -subtype=Sliver -power=2 -toughness=2 -[/card] -[card] name=Ward of Bones text=Each opponent who controls more creatures than you can't play creature cards. The same is true for artifacts, enchantments, and lands. mana={6} @@ -40386,12 +40112,6 @@ mana={1}{U} type=Instant [/card] [card] -name=White Mana Battery -text={2}, {T}: Put a charge counter on White Mana Battery. -- {T}, Remove any number of charge counters from White Mana Battery: Add {W} to your mana pool, then add an additional {W} to your mana pool for each charge counter removed this way. -mana={4} -type=Artifact -[/card] -[card] name=Wicked Akuba text={B}: Target player dealt damage by Wicked Akuba this turn loses 1 life. mana={B}{B} diff --git a/projects/mtg/bin/Res/sets/primitives/mtg.txt b/projects/mtg/bin/Res/sets/primitives/mtg.txt index 0b566c076..617b2dde9 100644 --- a/projects/mtg/bin/Res/sets/primitives/mtg.txt +++ b/projects/mtg/bin/Res/sets/primitives/mtg.txt @@ -390,6 +390,17 @@ text={T}: Add {1} to your mana pool. -- {T}: Add {W} or {U} to your mana pool. A type=Land [/card] [card] +name=Addle +auto=choice name(white) && moveTo(graveyard) target(*[white]|opponenthand) +auto=choice name(blue) && moveTo(graveyard) target(*[blue]|opponenthand) +auto=choice name(black) && moveTo(graveyard) target(*[black]|opponenthand) +auto=choice name(red) && moveTo(graveyard) target(*[red]|opponenthand) +auto=choice name(green) && moveTo(graveyard) target(*[green]|opponenthand) +text=Choose a color. Target player reveals his or her hand and you choose a card of that color from it. That player discards that card. +mana={1}{B} +type=Sorcery +[/card] +[card] name=Adun Oakenshield auto={B}{R}{G}{T}:moveTo(myhand) target(creature|mygraveyard) text={B}{R}{G}, {T}: Return target creature card from your graveyard to your hand. @@ -728,11 +739,11 @@ toughness=1 [/card] [card] name=Akroma's Blessing -auto=may lord(creature|myBattlefield) protection from white -auto=may lord(creature|myBattlefield) protection from blue -auto=may lord(creature|myBattlefield) protection from black -auto=may lord(creature|myBattlefield) protection from red -auto=may lord(creature|myBattlefield) protection from green +auto=choice name(protection from white) && lord(creature|myBattlefield) protection from white +auto=choice name(protection from blue) && lord(creature|myBattlefield) protection from blue +auto=choice name(protection from black) && lord(creature|myBattlefield) protection from black +auto=choice name(protection from red) && lord(creature|myBattlefield) protection from red +auto=choice name(protection from green) && lord(creature|myBattlefield) protection from green autohand={W}:cycling text=Creatures you control gain protection from the color of your choice until end of turn. -- Cycling {W} ({W}, Discard this card: Draw a card.) mana={2}{W} @@ -4308,6 +4319,23 @@ power=4 toughness=4 [/card] [card] +name=Black Mana Battery +auto={2}{T}:counter(0/0,1,Storage) +auto={T}{C(0/0,-1,Storage)}:name(Remove 1 Counters) && add{B} +auto={T}{C(0/0,-2,Storage)}:name(Remove 2 Counters) && add{B}{B} +auto={T}{C(0/0,-3,Storage)}:name(Remove 3 Counters) && add{B}{B}{B} +auto={T}{C(0/0,-4,Storage)}:name(Remove 4 Counters) && add{B}{B}{B}{B} +auto={T}{C(0/0,-5,Storage)}:name(Remove 5 Counters) && add{B}{B}{B}{B}{B} +auto={T}{C(0/0,-6,Storage)}:name(Remove 6 Counters) && add{B}{B}{B}{B}{B}{B} +auto={T}{C(0/0,-7,Storage)}:name(Remove 7 Counters) && add{B}{B}{B}{B}{B}{B}{B} +auto={T}{C(0/0,-8,Storage)}:name(Remove 8 Counters) && add{B}{B}{B}{B}{B}{B}{B}{B} +auto={T}{C(0/0,-9,Storage)}:name(Remove 9 Counters) && add{B}{B}{B}{B}{B}{B}{B}{B}{B} +auto={T}{C(0/0,-10,Storage)}:name(Remove 10 Counters) && add{B}{B}{B}{B}{B}{B}{B}{B}{B}{B} +text={2}, {T}: Put a charge counter on Black Mana Battery. -- {T}, Remove any number of charge counters from Black Mana Battery: Add {B} to your mana pool, then add an additional {B} to your mana pool for each charge counter removed this way. +mana={4} +type=Artifact +[/card] +[card] name=Black Knight abilities=first strike,protection from white text=First strike (This creature deals combat damage before creatures without first strike.) -- Protection from white (This creature can't be blocked, targeted, dealt damage, or enchanted by anything white.) @@ -4391,6 +4419,22 @@ power=3 toughness=1 [/card] [card] +name=Blademane Baku +auto=@movedTo(spirit,arcane|mystack):counter(0/0,1,Ki) +auto={1}{C(0/0,-1,Ki)}:name(Remove 1 Counters) && 2/0 +auto={1}{C(0/0,-2,Ki)}:name(Remove 2 Counters) && 4/0 +auto={1}{C(0/0,-3,Ki)}:name(Remove 3 Counters) && 6/0 +auto={1}{C(0/0,-4,Ki)}:name(Remove 4 Counters) && 8/0 +auto={1}{C(0/0,-5,Ki)}:name(Remove 5 Counters) && 10/0 +auto={1}{C(0/0,-6,Ki)}:name(Remove 6 Counters) && 12/0 +text=Whenever you cast a Spirit or Arcane spell, you may put a ki counter on Blademane Baku. -- {1}, Remove X ki counters from Blademane Baku: For each counter removed, Blademane Baku gets +2/+0 until end of turn. +mana={1}{R} +type=Creature +subtype=Spirit +power=1 +toughness=1 +[/card] +[card] name=Bladetusk Boar abilities=intimidate text=Intimidate (This creature can't be blocked except by artifact creatures and/or creatures that share a color with it.) @@ -5062,6 +5106,23 @@ mana={U} type=Instant [/card] [card] +name=Blue Mana Battery +auto={2}{T}:counter(0/0,1,Storage) +auto={T}{C(0/0,-1,Storage)}:name(Remove 1 Counters) && add{U} +auto={T}{C(0/0,-2,Storage)}:name(Remove 2 Counters) && add{U}{U} +auto={T}{C(0/0,-3,Storage)}:name(Remove 3 Counters) && add{U}{U}{U} +auto={T}{C(0/0,-4,Storage)}:name(Remove 4 Counters) && add{U}{U}{U}{U} +auto={T}{C(0/0,-5,Storage)}:name(Remove 5 Counters) && add{U}{U}{U}{U}{U} +auto={T}{C(0/0,-6,Storage)}:name(Remove 6 Counters) && add{U}{U}{U}{U}{U}{U} +auto={T}{C(0/0,-7,Storage)}:name(Remove 7 Counters) && add{U}{U}{U}{U}{U}{U}{U} +auto={T}{C(0/0,-8,Storage)}:name(Remove 8 Counters) && add{U}{U}{U}{U}{U}{U}{U}{U} +auto={T}{C(0/0,-9,Storage)}:name(Remove 9 Counters) && add{U}{U}{U}{U}{U}{U}{U}{U}{U} +auto={T}{C(0/0,-10,Storage)}:name(Remove 10 Counters) && add{U}{U}{U}{U}{U}{U}{U}{U}{U}{U} +text={2}, {T}: Put a charge counter on Blue Mana Battery. -- {T}, Remove any number of charge counters from Blue Mana Battery: Add {U} to your mana pool, then add an additional {U} to your mana pool for each charge counter removed this way. +mana={4} +type=Artifact +[/card] +[card] name=Blue Scarab target=creature auto=cantbeblockedby(creature[blue]) @@ -5743,6 +5804,15 @@ mana={1} type=Artifact [/card] [card] +name=Brainbite +target=*|opponenthand +auto=moveTo(graveyard) +auto=draw:1 controller +text=Target opponent reveals his or her hand. You choose a card from it. That player discards that card. -- Draw a card. +mana={2}{U}{B} +type=Sorcery +[/card] +[card] name=Braingeyser target=player auto=draw:X @@ -5864,6 +5934,17 @@ type=Enchantment subtype=Aura [/card] [card] +name=Brave the Elements +auto=choice name(protection from white) && lord(creature[white]|myBattlefield) protection from white +auto=choice name(protection from blue) && lord(creature[white]|myBattlefield) protection from blue +auto=choice name(protection from black) && lord(creature[white]|myBattlefield) protection from black +auto=choice name(protection from red) && lord(creature[white]|myBattlefield) protection from red +auto=choice name(protection from green) && lord(creature[white]|myBattlefield) protection from green +text=Choose a color. White creatures you control gain protection from the chosen color until end of turn. +mana={W} +type=Instant +[/card] +[card] name=Breach target=creature auto=2/0 @@ -6963,6 +7044,14 @@ text={T}: Add {1} to your mana pool. -- {(u/r)}, {T}: Add {U}{U}, {U}{R}, or {R} type=Land [/card] [card] +name=Castigate +target=*|opponenthand +auto=moveTo(exile) +text=Target opponent reveals his or her hand. You choose a nonland card from it and exile that card. +mana={W}{B} +type=Sorcery +[/card] +[card] name=Castle auto=lord(creature[-tapped]|myBattlefield) 0/2 text=Untapped creatures you control get +0/+2. @@ -7010,8 +7099,8 @@ type=Instant [/card] [card] name=Catastrophe -auto=may destroy all(land) -auto=may bury all(creature) +auto=choice destroy all(land) +auto=choice bury all(creature) text=Destroy all lands or all creatures. Creatures destroyed this way can't be regenerated. mana={4}{W}{W} type=Sorcery @@ -7518,6 +7607,25 @@ power=2 toughness=2 [/card] [card] +name=Chameleon Spirit +auto=choice name(White) && counter(0/0,1,White) all(this) +auto=choice name(Blue) && counter(0/0,1,Blue) all(this) +auto=choice name(Black) && counter(0/0,1,Black) all(this) +auto=choice name(Red) && counter(0/0,1,Red) all(this) +auto=choice name(Green) && counter(0/0,1,Green) all(this) +auto=this(counter{0/0.1.White}) foreach(*[white]|opponentBattlefield) 1/1 +auto=this(counter{0/0.1.Blue}) foreach(*[blue]|opponentBattlefield) 1/1 +auto=this(counter{0/0.1.Black}) foreach(*[black]|opponentBattlefield) 1/1 +auto=this(counter{0/0.1.Red}) foreach(*[red]|opponentBattlefield) 1/1 +auto=this(counter{0/0.1.Green}) foreach(*[green]|opponentBattlefield) 1/1 +text=As Chameleon Spirit enters the battlefield, choose a color. -- Chameleon Spirit's power and toughness are each equal to the number of permanents of the chosen color your opponents control. +mana={3}{U} +type=Creature +subtype=Illusion Spirit +power=* +toughness=* +[/card] +[card] name=Champion Lancer auto=preventAllCombatDamage from(creature) to(this) text=Prevent all damage that would be dealt to Champion Lancer by creatures. @@ -8656,6 +8764,14 @@ power=2 toughness=4 [/card] [card] +name=Coercion +target=*|opponenthand +auto=moveTo(graveyard) +text=Target opponent reveals his or her hand. You choose a card from it. That player discards that card. +mana={2}{B} +type=Sorcery +[/card] +[card] name=Coffin Purge auto=exile target(*|graveyard) autograveyard={B}:copy(this) && moveTo(mystack) @@ -8716,6 +8832,24 @@ mana={2}{W} type=Enchantment [/card] [card] +name=Coldsteel Heart +auto=choice name(White) && counter(0/0,1,White) all(this) +auto=choice name(Blue) && counter(0/0,1,Blue) all(this) +auto=choice name(Black) && counter(0/0,1,Black) all(this) +auto=choice name(Red) && counter(0/0,1,Red) all(this) +auto=choice name(Green) && counter(0/0,1,Green) all(this) +auto=tap +auto=this(counter{0/0.1.White}) {T}:add{W} +auto=this(counter{0/0.1.Blue}) {T}:add{U} +auto=this(counter{0/0.1.Black}) {T}:add{B} +auto=this(counter{0/0.1.Red}) {T}:add{R} +auto=this(counter{0/0.1.Green}) {T}:add{G} +text=Coldsteel Heart enters the battlefield tapped. -- As Coldsteel Heart enters the battlefield, choose a color. -- {T}: Add one mana of the chosen color to your mana pool. +mana={2} +type=Artifact +subtype=Snow +[/card] +[card] name=Collapsing Borders auto=@each my upkeep:aslongas(plains|myBattlefield) life:1 controller auto=@each my upkeep:aslongas(island|myBattlefield) life:1 controller @@ -11879,6 +12013,13 @@ mana={3}{U}{U} type=Enchantment [/card] [card] +name=Distress +auto=moveTo(graveyard) target(*[-land]|opponenthand) +text=Target player reveals his or her hand. You choose a nonland card from it. That player discards that card. +mana={B}{B} +type=Sorcery +[/card] +[card] name=Dive Bomber abilities=flying auto={T}{S}:damage:2 target(creature[attacking;blocking]) @@ -12916,6 +13057,14 @@ power=1 toughness=1 [/card] [card] +name=Duress +target=*[-creature;-land]|opponenthand +auto=moveTo(graveyard) +text=Target opponent reveals his or her hand. You choose a noncreature, nonland card from it. That player discards that card. +mana={B} +type=Sorcery +[/card] +[card] name=Durkwood Boars mana={4}{G} type=Creature @@ -14144,6 +14293,14 @@ auto=@movedto(this|exile):moveto(mygraveyard) target(*|myhand) auto=moveto(exile) all(this) [/card] [card] +name=Encroach +target=land[-basic]|opponenthand +auto=moveTo(graveyard) +text=Target player reveals his or her hand. You choose a nonbasic land card from it. That player discards that card. +mana={B} +type=Sorcery +[/card] +[card] name=Endangered Armodon auto=aslongas(creature[toughness<=2]|myBattlefield) -99/-99 text=When you control a creature with toughness 2 or less, sacrifice Endangered Armodon. @@ -16894,6 +17051,23 @@ power=2 toughness=4 [/card] [card] +name=Fountain of Cho +auto=tap +auto={T}:counter(0/0,1,Storage) +auto={T}{C(0/0,-1,Storage)}:name(Remove 1 Counters) && add{W} +auto={T}{C(0/0,-2,Storage)}:name(Remove 2 Counters) && add{W}{W} +auto={T}{C(0/0,-3,Storage)}:name(Remove 3 Counters) && add{W}{W}{W} +auto={T}{C(0/0,-4,Storage)}:name(Remove 4 Counters) && add{W}{W}{W}{W} +auto={T}{C(0/0,-5,Storage)}:name(Remove 5 Counters) && add{W}{W}{W}{W}{W} +auto={T}{C(0/0,-6,Storage)}:name(Remove 6 Counters) && add{W}{W}{W}{W}{W}{W} +auto={T}{C(0/0,-7,Storage)}:name(Remove 7 Counters) && add{W}{W}{W}{W}{W}{W}{w} +auto={T}{C(0/0,-8,Storage)}:name(Remove 8 Counters) && add{W}{W}{W}{W}{W}{W}{w}{w} +auto={T}{C(0/0,-9,Storage)}:name(Remove 9 Counters) && add{W}{W}{W}{W}{W}{W}{w}{w}{w} +auto={T}{C(0/0,-10,Storage)}:name(Remove 10 Counters) && add{W}{W}{W}{W}{W}{w}{w}{w}{w}{w} +text=Fountain of Cho enters the battlefield tapped. -- {T}: Put a storage counter on Fountain of Cho. -- {T}, Remove any number of storage counters from Fountain of Cho: Add {W} to your mana pool for each storage counter removed this way. +type=Land +[/card] +[card] name=Fountain of Youth auto={2}{T}:life:1 text={2}, {T}: You gain 1 life. @@ -19641,6 +19815,23 @@ type=Enchantment subtype=Aura [/card] [card] +name=Green Mana Battery +auto={2}{T}:counter(0/0,1,Storage) +auto={T}{C(0/0,-1,Storage)}:name(Remove 1 Counters) && add{G} +auto={T}{C(0/0,-2,Storage)}:name(Remove 2 Counters) && add{G}{G} +auto={T}{C(0/0,-3,Storage)}:name(Remove 3 Counters) && add{G}{G}{G} +auto={T}{C(0/0,-4,Storage)}:name(Remove 4 Counters) && add{G}{G}{G}{G} +auto={T}{C(0/0,-5,Storage)}:name(Remove 5 Counters) && add{G}{G}{G}{G}{G} +auto={T}{C(0/0,-6,Storage)}:name(Remove 6 Counters) && add{G}{G}{G}{G}{G}{G} +auto={T}{C(0/0,-7,Storage)}:name(Remove 7 Counters) && add{G}{G}{G}{G}{G}{G}{G} +auto={T}{C(0/0,-8,Storage)}:name(Remove 8 Counters) && add{G}{G}{G}{G}{G}{G}{G}{G} +auto={T}{C(0/0,-9,Storage)}:name(Remove 9 Counters) && add{G}{G}{G}{G}{G}{G}{G}{G}{G} +auto={T}{C(0/0,-10,Storage)}:name(Remove 10 Counters) && add{G}{G}{G}{G}{G}{G}{G}{G}{G}{G} +text={2}, {T}: Put a charge counter on Green Mana Battery. -- {T}, Remove any number of charge counters from Green Mana Battery: Add {G} to your mana pool, then add an additional {G} to your mana pool for each charge counter removed this way. +mana={4} +type=Artifact +[/card] +[card] name=Green Scarab target=creature auto=cantbeblockedby(creature[green]) @@ -20645,6 +20836,18 @@ power=1 toughness=1 [/card] [card] +name=He Who Hungers +abilities=flying +auto={1}{S(creature[spirit]|mybattlefield)}:moveTo(graveyard) target(*|opponenthand) +auto=@movedTo(this|mygraveyard) from(myBattlefield):may moveTo(myhand) target(other spirit[manacost<=4]|mygraveyard) +text=Flying -- {1}, Sacrifice a Spirit: Target opponent reveals his or her hand. You choose a card from it. That player discards that card. Activate this ability only any time you could cast a sorcery. -- Soulshift 4 (When this is put into a graveyard from the battlefield, you may return target Spirit card with converted mana cost 4 or less from your graveyard to your hand.) +mana={4}{B} +type=Legendary Creature +subtype=Spirit +power=3 +toughness=2 +[/card] +[card] name=Headless Horseman mana={2}{B} type=Creature @@ -25871,6 +26074,23 @@ power=1 toughness=1 [/card] [card] +name=Kyren Toy +auto={1}{T}:counter(0/0,1,Charge) +auto={T}{C(0/0,-1,Charge)}:name(Remove 1 Counters) && add{2} +auto={T}{C(0/0,-2,Charge)}:name(Remove 2 Counters) && add{3} +auto={T}{C(0/0,-3,Charge)}:name(Remove 3 Counters) && add{4} +auto={T}{C(0/0,-4,Charge)}:name(Remove 4 Counters) && add{5} +auto={T}{C(0/0,-5,Charge)}:name(Remove 5 Counters) && add{6} +auto={T}{C(0/0,-6,Charge)}:name(Remove 6 Counters) && add{7} +auto={T}{C(0/0,-7,Charge)}:name(Remove 7 Counters) && add{8} +auto={T}{C(0/0,-8,Charge)}:name(Remove 8 Counters) && add{9} +auto={T}{C(0/0,-9,Charge)}:name(Remove 9 Counters) && add{10} +auto={T}{C(0/0,-10,Charge)}:name(Remove 10 Counters) && add{11} +text={1}, {T}: Put a charge counter on Kyren Toy. -- {T}, Remove X charge counters from Kyren Toy: Add {X}{1} to your mana pool. +mana={3} +type=Artifact +[/card] +[card] name=Kyscu Drake abilities=flying auto={G}:0/1 limit:1 @@ -27227,12 +27447,13 @@ toughness=1 [card] name=Lotus Blossom auto=@each my upkeep:may counter(0/0,1,Petal) -auto={T}{S}:thisforeach(counter{0/0.1.Petal}) add{W} controller -auto={T}{S}:thisforeach(counter{0/0.1.Petal}) add{U} controller -auto={T}{S}:thisforeach(counter{0/0.1.Petal}) add{B} controller -auto={T}{S}:thisforeach(counter{0/0.1.Petal}) add{R} controller -auto={T}{S}:thisforeach(counter{0/0.1.Petal}) add{G} controller -text=At the beginning of your upkeep, you may put a petal counter on Lotus Blossom. -- {T}, Sacrifice Lotus Blossom: Add X mana of any one color to your mana pool, where X is the number of petal counters on Lotus Blossom. +auto={T}{S}:name(Sacrifice And Add White Mana) && thisforeach(counter{0/0.1.Petal}) add{W} controller +auto={T}{S}:name(Sacrifice And Add Blue Mana) && thisforeach(counter{0/0.1.Petal}) add{U} controller +auto={T}{S}:name(Sacrifice And Add Black Mana) && thisforeach(counter{0/0.1.Petal}) add{B} controller +auto={T}{S}:name(Sacrifice And Add Red Mana) && thisforeach(counter{0/0.1.Petal}) add{R} controller +auto={T}{S}:name(Sacrifice And Add Green Mana) && thisforeach(counter{0/0.1.Petal}) add{G} controller +text=At the beginning of your upkeep, you may put a petal counter on Lotus Blossom. -- {T}, Sacrifice Lotus Blossom: +Add X mana of any one color to your mana pool, where X is the number of petal counters on Lotus Blossom. mana={2} type=Artifact [/card] @@ -28648,6 +28869,40 @@ power=0 toughness=5 [/card] [card] +name=Mercadian Bazaar +auto=tap +auto={T}:counter(0/0,1,Storage) +auto={T}{C(0/0,-1,Storage)}:name(Remove 1 Counters) && add{R} +auto={T}{C(0/0,-2,Storage)}:name(Remove 2 Counters) && add{R}{R} +auto={T}{C(0/0,-3,Storage)}:name(Remove 3 Counters) && add{R}{R}{R} +auto={T}{C(0/0,-4,Storage)}:name(Remove 4 Counters) && add{R}{R}{R}{R} +auto={T}{C(0/0,-5,Storage)}:name(Remove 5 Counters) && add{R}{R}{R}{R}{R} +auto={T}{C(0/0,-6,Storage)}:name(Remove 6 Counters) && add{R}{R}{R}{R}{R}{R} +auto={T}{C(0/0,-7,Storage)}:name(Remove 7 Counters) && add{R}{R}{R}{R}{R}{R}{R} +auto={T}{C(0/0,-8,Storage)}:name(Remove 8 Counters) && add{R}{R}{R}{R}{R}{R}{R}{R} +auto={T}{C(0/0,-9,Storage)}:name(Remove 9 Counters) && add{R}{R}{R}{R}{R}{R}{R}{R}{R} +auto={T}{C(0/0,-10,Storage)}:name(Remove 10 Counters) && add{R}{R}{R}{R}{R}{R}{R}{R}{R}{R} +text=Mercadian Bazaar enters the battlefield tapped. -- {T}: Put a storage counter on Mercadian Bazaar. -- {T}, Remove any number of storage counters from Mercadian Bazaar: Add {R} to your mana pool for each storage counter removed this way. +type=Land +[/card] +[card] +name=Mercadian Lift +auto={T}:counter(0/0,1,Winch) +auto={T}{C(0/0,-1,Winch)}:name(Remove 1 Counters) && moveTo(myBattlefield) notatarget(creature[manacost=1]|myhand) +auto={T}{C(0/0,-2,Winch)}:name(Remove 2 Counters) && moveTo(myBattlefield) notatarget(creature[manacost=2]|myhand) +auto={T}{C(0/0,-3,Winch)}:name(Remove 3 Counters) && moveTo(myBattlefield) notatarget(creature[manacost=3]|myhand) +auto={T}{C(0/0,-4,Winch)}:name(Remove 4 Counters) && moveTo(myBattlefield) notatarget(creature[manacost=4]|myhand) +auto={T}{C(0/0,-5,Winch)}:name(Remove 5 Counters) && moveTo(myBattlefield) notatarget(creature[manacost=5]|myhand) +auto={T}{C(0/0,-6,Winch)}:name(Remove 6 Counters) && moveTo(myBattlefield) notatarget(creature[manacost=6]|myhand) +auto={T}{C(0/0,-7,Winch)}:name(Remove 7 Counters) && moveTo(myBattlefield) notatarget(creature[manacost=7]|myhand) +auto={T}{C(0/0,-8,Winch)}:name(Remove 8 Counters) && moveTo(myBattlefield) notatarget(creature[manacost=8]|myhand) +auto={T}{C(0/0,-9,Winch)}:name(Remove 9 Counters) && moveTo(myBattlefield) notatarget(creature[manacost=9]|myhand) +auto={T}{C(0/0,-10,Winch)}:name(Remove 10 Counters) && moveTo(myBattlefield) notatarget(creature[manacost=10]|myhand) +text={1}, {T}: Put a winch counter on Mercadian Lift. -- {T}, Remove X winch counters from Mercadian Lift: You may put a creature card with converted mana cost X from your hand onto the battlefield. +mana={1} +type=Artifact +[/card] +[card] name=Mercadia's Downfall auto=lord(creature[attacking]|myBattlefield) foreach(land[-basic]|opponentBattlefield) 1/0 auto=lord(creature[attacking]|opponentBattlefield) foreach(land[-basic]|myBattlefield) 1/0 @@ -29072,6 +29327,13 @@ mana={X}{B}{B} type=Sorcery [/card] [card] +name=Mind Slash +auto={B}{S(creature|mybattlefield)}:moveTo(graveyard) target(*|opponenthand) asSorcery +text={B}, Sacrifice a creature: Target opponent reveals his or her hand. You choose a card from it. That player discards that card. Activate this ability only any time you could cast a sorcery. +mana={1}{B}{B} +type=Enchantment +[/card] +[card] name=Mind Spring auto=draw:X controller text=Draw X cards. @@ -32519,6 +32781,26 @@ power=2 toughness=2 [/card] [card] +name=Order of the Stars +abilities=defender +auto=choice name(white) && counter(0/0,1,White) all(this) +auto=choice name(blue) && counter(0/0,1,Blue) all(this) +auto=choice name(black) && counter(0/0,1,Black) all(this) +auto=choice name(red) && counter(0/0,1,Red) all(this) +auto=choice name(green) && counter(0/0,1,Green) all(this) +auto=this(counter{0/0.1.White}) protection from white +auto=this(counter{0/0.1.Blue}) protection from blue +auto=this(counter{0/0.1.Black}) protection from black +auto=this(counter{0/0.1.Red}) protection from red +auto=this(counter{0/0.1.Green}) protection from green +text=Defender (This creature can't attack.) -- As Order of the Stars enters the battlefield, choose a color. -- Order of the Stars has protection from the chosen color. +mana={W} +type=Creature +subtype=Human Cleric +power=0 +toughness=1 +[/card] +[card] name=Order of the White Shield abilities=protection from black auto={W}:first strike @@ -32655,6 +32937,14 @@ power=2 toughness=2 [/card] [card] +name=Ostracize +target=creature|opponenthand +auto=moveTo(graveyard) +text=Target opponent reveals his or her hand. You choose a creature card from it. That player discards that card. +mana={B} +type=Sorcery +[/card] +[card] name=Otarian Juggernaut auto=cantbeblockedby(wall) auto=aslongas(*|mygraveyard) 3/0 >6 @@ -32816,6 +33106,14 @@ power=2 toughness=2 [/card] [card] +name=Painful Memories +target=*|opponenthand +auto=moveTo(ownerlibrary) +text=Look at target opponent's hand and choose a card from it. Put that card on top of that player's library. +mana={1}{B} +type=Sorcery +[/card] +[card] name=Paladin en-Vec abilities=first strike,protection from black,protection from red text=First strike, protection from black and from red (This creature deals combat damage before creatures without first strike. It can't be blocked, targeted, dealt damage, or enchanted by anything black or red.) @@ -32937,6 +33235,27 @@ power=6 toughness=3 [/card] [card] +name=Paradise Plume +auto=choice name(White) && counter(0/0,1,White) all(this) +auto=choice name(Blue) && counter(0/0,1,Blue) all(this) +auto=choice name(Black) && counter(0/0,1,Black) all(this) +auto=choice name(Red) && counter(0/0,1,Red) all(this) +auto=choice name(Green) && counter(0/0,1,Green) all(this) +auto=this(counter{0/0.1.White}) {T}:add{W} +auto=this(counter{0/0.1.Blue}) {T}:add{U} +auto=this(counter{0/0.1.Black}) {T}:add{B} +auto=this(counter{0/0.1.Red}) {T}:add{R} +auto=this(counter{0/0.1.Green}) {T}:add{G} +auto=@movedto(*[white]|stack):this(counter{0/0.1.White}) life:1 controller +auto=@movedto(*[blue]|stack):this(counter{0/0.1.Blue}) life:1 controller +auto=@movedto(*[black]|stack):this(counter{0/0.1.Black}) life:1 controller +auto=@movedto(*[red]|stack):this(counter{0/0.1.Red}) life:1 controller +auto=@movedto(*[green]|stack):this(counter{0/0.1.Green}) life:1 controller +text=As Paradise Plume enters the battlefield, choose a color. -- Whenever a player casts a spell of the chosen color, you may gain 1 life. -- {T}: Add one mana of the chosen color to your mana pool. +mana={1} +type=Artifact +[/card] +[card] name=Paragon of the Amesha abilities=first strike auto={W}{U}{B}{R}{G}:3/3 && becomes(Angel Creature,p/t,flying,lifelink) ueot @@ -33380,6 +33699,14 @@ mana={2}{B} type=Sorcery [/card] [card] +name=Perish the Thought +target=*|opponenthand +auto=moveTo(ownerlibrary) && shuffle +text=Target opponent reveals his or her hand. You choose a card from it. That player shuffles that card into his or her library. +mana={2}{B} +type=Sorcery +[/card] +[card] name=Persuasion target=creature alias=1194 @@ -34790,6 +35117,14 @@ mana={X}{U}{B} type=Sorcery [/card] [card] +name=Psychic Spear +target=spirit,arcane|opponenthand +auto=moveTo(graveyard) +text=Target player reveals his or her hand. You choose a Spirit or Arcane card from it. That player discards that card. +mana={B} +type=Sorcery +[/card] +[card] name=Psychic Trance auto=lord(wizard|myBattlefield) {T}:fizzle target(*|stack) text=Until end of turn, Wizards you control gain "{T}: Counter target spell." @@ -35226,6 +35561,22 @@ power=1 toughness=1 [/card] [card] +name=Quillmane Baku +auto=@movedTo(spirit,arcane|mystack):counter(0/0,1,Ki) +auto={1}{C(0/0,-1,Ki)}{T}:name(Remove 1 Counters) && moveTo(ownerhand) target(creature[manacost<=1]) +auto={1}{C(0/0,-2,Ki)}{T}:name(Remove 2 Counters) && moveTo(ownerhand) target(creature[manacost<=2]) +auto={1}{C(0/0,-3,Ki)}{T}:name(Remove 3 Counters) && moveTo(ownerhand) target(creature[manacost<=3]) +auto={1}{C(0/0,-4,Ki)}{T}:name(Remove 4 Counters) && moveTo(ownerhand) target(creature[manacost<=4]) +auto={1}{C(0/0,-5,Ki)}{T}:name(Remove 5 Counters) && moveTo(ownerhand) target(creature[manacost<=5]) +auto={1}{C(0/0,-6,Ki)}{T}:name(Remove 6 Counters) && moveTo(ownerhand) target(creature[manacost<=6]) +text=Whenever you cast a Spirit or Arcane spell, you may put a ki counter on Quillmane Baku. -- {1}, {T}, Remove X ki counters from Quillmane Baku: Return target creature with converted mana cost X or less to its owner's hand. +mana={4}{U} +type=Creature +subtype=Spirit +power=3 +toughness=3 +[/card] +[card] name=Quirion Druid auto={G}{T}:target(land) becomes(Creature,2/2,green) text={G}, {T}: Target land becomes a 2/2 green creature that's still a land. (This effect lasts indefinitely.) @@ -35246,6 +35597,25 @@ power=1 toughness=1 [/card] [card] +name=Quirion Elves +auto=choice name(white) && counter(0/0,1,White) all(this) +auto=choice name(blue) && counter(0/0,1,Blue) all(this) +auto=choice name(black) && counter(0/0,1,Black) all(this) +auto=choice name(red) && counter(0/0,1,Red) all(this) +auto=choice name(green) && counter(0/0,1,Green) all(this) +auto=this(counter{0/0.1.White}) {T}:Add{W} +auto=this(counter{0/0.1.Blue}) {T}:Add{U} +auto=this(counter{0/0.1.Black}) {T}:Add{B} +auto=this(counter{0/0.1.Red}) {T}:Add{R} +auto=this(counter{0/0.1.Green}) {T}:Add{G} +text=As Quirion Elves enters the battlefield, choose a color. -- {T}: Add {G} to your mana pool. -- {T}: Add one mana of the chosen color to your mana pool. +mana={1}{G} +type=Creature +subtype=Elf Druid +power=1 +toughness=1 +[/card] +[card] name=Quirion Trailblazer auto=may moveTo(myBattlefield) target(land[basic]|mylibrary) && tap text=When Quirion Trailblazer enters the battlefield, you may search your library for a basic land card and put that card onto the battlefield tapped. If you do, shuffle your library. @@ -36265,6 +36635,23 @@ mana={R} type=Instant [/card] [card] +name=Red Mana Battery +auto={2}{T}:counter(0/0,1,Charge) +auto={T}{C(0/0,-1,Charge)}:name(Remove 1 Counters) && add{R} +auto={T}{C(0/0,-2,Charge)}:name(Remove 2 Counters) && add{R}{R} +auto={T}{C(0/0,-3,Charge)}:name(Remove 3 Counters) && add{R}{R}{R} +auto={T}{C(0/0,-4,Charge)}:name(Remove 4 Counters) && add{R}{R}{R}{R} +auto={T}{C(0/0,-5,Charge)}:name(Remove 5 Counters) && add{R}{R}{R}{R}{R} +auto={T}{C(0/0,-6,Charge)}:name(Remove 6 Counters) && add{R}{R}{R}{R}{R}{R} +auto={T}{C(0/0,-7,Charge)}:name(Remove 7 Counters) && add{R}{R}{R}{R}{R}{R}{R} +auto={T}{C(0/0,-8,Charge)}:name(Remove 8 Counters) && add{R}{R}{R}{R}{R}{R}{R}{R} +auto={T}{C(0/0,-9,Charge)}:name(Remove 9 Counters) && add{R}{R}{R}{R}{R}{R}{R}{R}{R} +auto={T}{C(0/0,-10,Charge)}:name(Remove 10 Counters) && add{R}{R}{R}{R}{R}{R}{R}{R}{R}{R} +text={2}, {T}: Put a charge counter on Red Mana Battery. -- {T}, Remove any number of charge counters from Red Mana Battery: Add {R} to your mana pool, then add an additional {R} to your mana pool for each charge counter removed this way. +mana={4} +type=Artifact +[/card] +[card] name=Red Scarab target=creature auto=cantbeblockedby(creature[red]) @@ -37910,6 +38297,23 @@ power=4 toughness=4 [/card] [card] +name=Rushwood Grove +auto=tap +auto={T}:counter(0/0,1,Storage) +auto={T}{C(0/0,-1,Storage)}:name(Remove 1 Counters) && add{G} +auto={T}{C(0/0,-2,Storage)}:name(Remove 2 Counters) && add{G}{G} +auto={T}{C(0/0,-3,Storage)}:name(Remove 3 Counters) && add{G}{G}{G} +auto={T}{C(0/0,-4,Storage)}:name(Remove 4 Counters) && add{G}{G}{G}{G} +auto={T}{C(0/0,-5,Storage)}:name(Remove 5 Counters) && add{G}{G}{G}{G}{G} +auto={T}{C(0/0,-6,Storage)}:name(Remove 6 Counters) && add{G}{G}{G}{G}{G}{G} +auto={T}{C(0/0,-7,Storage)}:name(Remove 7 Counters) && add{G}{G}{G}{G}{G}{G}{G} +auto={T}{C(0/0,-8,Storage)}:name(Remove 8 Counters) && add{G}{G}{G}{G}{G}{G}{G}{G} +auto={T}{C(0/0,-9,Storage)}:name(Remove 9 Counters) && add{G}{G}{G}{G}{G}{G}{G}{G}{G} +auto={T}{C(0/0,-10,Storage)}:name(Remove 10 Counters) && add{G}{G}{G}{G}{G}{G}{G}{G}{G}{G} +text=Rushwood Grove enters the battlefield tapped. -- {T}: Put a storage counter on Rushwood Grove. -- {T}, Remove any number of storage counters from Rushwood Grove: Add {G} to your mana pool for each storage counter removed this way. +type=Land +[/card] +[card] name=Rushwood Herbalist auto={G}{T}{S(*|myhand)}:regenerate target(creature) text={G}, {T}, Discard a card: Regenerate target creature. @@ -38379,6 +38783,23 @@ power=2 toughness=2 [/card] [card] +name=Saprazzan Cove +auto=tap +auto={T}:counter(0/0,1,Storage) +auto={T}{C(0/0,-1,Storage)}:name(Remove 1 Counters) && add{U} +auto={T}{C(0/0,-2,Storage)}:name(Remove 2 Counters) && add{U}{U} +auto={T}{C(0/0,-3,Storage)}:name(Remove 3 Counters) && add{U}{U}{U} +auto={T}{C(0/0,-4,Storage)}:name(Remove 4 Counters) && add{U}{U}{U}{U} +auto={T}{C(0/0,-5,Storage)}:name(Remove 5 Counters) && add{U}{U}{U}{U}{U} +auto={T}{C(0/0,-6,Storage)}:name(Remove 6 Counters) && add{U}{U}{U}{U}{U}{U} +auto={T}{C(0/0,-7,Storage)}:name(Remove 7 Counters) && add{U}{U}{U}{U}{U}{U}{U} +auto={T}{C(0/0,-8,Storage)}:name(Remove 8 Counters) && add{U}{U}{U}{U}{U}{U}{U}{U} +auto={T}{C(0/0,-9,Storage)}:name(Remove 9 Counters) && add{U}{U}{U}{U}{U}{U}{U}{U}{U} +auto={T}{C(0/0,-10,Storage)}:name(Remove 10 Counters) && add{U}{U}{U}{U}{U}{U}{U}{U}{U}{U} +text=Saprazzan Cove enters the battlefield tapped. -- {T}: Put a storage counter on Saprazzan Cove. -- {T}, Remove any number of storage counters from Saprazzan Cove: Add {U} to your mana pool for each storage counter removed this way. +type=Land +[/card] +[card] name=Saprazzan Outrigger auto=@each combatends:moveTo(ownerlibrary) all(saprazzan outrigger[attacking;blocking]|myBattlefield) text=When Saprazzan Outrigger attacks or blocks, put it on top of its owner's library at end of combat. @@ -38433,6 +38854,22 @@ power=2 toughness=1 [/card] [card] +name=Sarpadian Empires, Vol. VII +auto=choice name(white citizen) && counter(0/0,1,White Citizen) all(this) +auto=choice name(blue camarid) && counter(0/0,1,Blue Camarid) all(this) +auto=choice name(black thrull) && counter(0/0,1,Black Thrull) all(this) +auto=choice name(red goblin) && counter(0/0,1,Red Goblin) all(this) +auto=choice name(green saproling) && counter(0/0,1,Green Saproling) all(this) +auto=this(counter{0/0.1.White Citizen}) {T}:token(Citizen,Creature Citizen,1/1,white) +auto=this(counter{0/0.1.Blue Camarid}) {T}:token(Camarid,Creature Camarid,1/1,blue) +auto=this(counter{0/0.1.Black Thrull}) {T}:token(Thrull,Creature Thrull,1/1,black) +auto=this(counter{0/0.1.Red Goblin}) {T}:token(Goblin,Creature Goblin,1/1,red) +auto=this(counter{0/0.1.Green Saproling}) {T}:token(Saproling,Creature Saproling,1/1,green) +text=As Sarpadian Empires, Vol. VII enters the battlefield, choose white Citizen, blue Camarid, black Thrull, red Goblin, or green Saproling. -- {3}, {T}: Put a 1/1 creature token of the chosen color and type onto the battlefield. +mana={3} +type=Artifact +[/card] +[card] name=Savage Conception auto=token(Beast,creature beast, 3/3,green) autograveyard={3}{G}{G}{S(land|myhand)}:token(Beast,creature beast, 3/3,green) asSorcery @@ -39237,6 +39674,17 @@ mana={6}{R} type=Sorcery [/card] [card] +name=Searing Rays +auto=choice name(white) && foreach(creature[white]|myBattlefield) damage:1 controller && foreach(creature[white]|opponentBattlefield) damage:1 opponent +auto=choice name(blue) && foreach(creature[blue]|myBattlefield) damage:1 controller && foreach(creature[blue]|opponentBattlefield) damage:1 opponent +auto=choice name(black) && foreach(creature[black]|myBattlefield) damage:1 controller && foreach(creature[black]|opponentBattlefield) damage:1 opponent +auto=choice name(red) && foreach(creature[red]|myBattlefield) damage:1 controller && foreach(creature[red]|opponentBattlefield) damage:1 opponent +auto=choice name(green) && foreach(creature[green]|myBattlefield) damage:1 controller && foreach(creature[green]|opponentBattlefield) damage:1 opponent +text=Choose a color. Searing Rays deals damage to each player equal to the number of creatures of that color that player controls. +mana={2}{R} +type=Sorcery +[/card] +[card] name=Searing Wind target=creature,player auto=damage:10 @@ -40067,6 +40515,14 @@ mana={1}{R} type=Instant [/card] [card] +name=Shattered Dreams +target=artifact|opponenthand +auto=moveTo(graveyard) +text=Target opponent reveals his or her hand. You choose an artifact card from it. That player discards that card. +mana={B} +type=Sorcery +[/card] +[card] name=Shatterskull Giant mana={2}{R}{R} type=Creature @@ -40826,6 +41282,26 @@ power=1 toughness=1 [/card] [card] +name=Silhana Starfletcher +abilities=reach +auto=choice name(white) && counter(0/0,1,White) all(this) +auto=choice name(blue) && counter(0/0,1,Blue) all(this) +auto=choice name(black) && counter(0/0,1,Black) all(this) +auto=choice name(red) && counter(0/0,1,Red) all(this) +auto=choice name(green) && counter(0/0,1,Green) all(this) +auto=this(counter{0/0.1.White}) {T}:Add{W} +auto=this(counter{0/0.1.Blue}) {T}:Add{U} +auto=this(counter{0/0.1.Black}) {T}:Add{B} +auto=this(counter{0/0.1.Red}) {T}:Add{R} +auto=this(counter{0/0.1.Green}) {T}:Add{G} +text=Reach (This creature can block creatures with flying.) -- As Silhana Starfletcher enters the battlefield, choose a color. -- {T}: Add one mana of the chosen color to your mana pool. +mana={2}{G} +type=Creature +subtype=Elf Druid Archer +power=1 +toughness=3 +[/card] +[card] name=Silk Net target=creature auto=1/1 @@ -41389,6 +41865,22 @@ type=Artifact subtype=Equipment [/card] [card] +name=Skullmane Baku +auto=@movedTo(spirit,arcane|mystack):counter(0/0,1,Ki) +auto={1}{C(0/0,-1,Ki)}{T}:name(Remove 1 Counters) && -1/-1 target(creature) +auto={1}{C(0/0,-2,Ki)}{T}:name(Remove 2 Counters) && -2/-2 target(creature) +auto={1}{C(0/0,-3,Ki)}{T}:name(Remove 3 Counters) && -3/-3 target(creature) +auto={1}{C(0/0,-4,Ki)}{T}:name(Remove 4 Counters) && -4/-4 target(creature) +auto={1}{C(0/0,-5,Ki)}{T}:name(Remove 5 Counters) && -5/-5 target(creature) +auto={1}{C(0/0,-6,Ki)}{T}:name(Remove 6 Counters) && -6/-6 target(creature) +text=Whenever you cast a Spirit or Arcane spell, you may put a ki counter on Skullmane Baku. -- {1}, {T}, Remove X ki counters from Skullmane Baku: Target creature gets -X/-X until end of turn. +mana={3}{B}{B} +type=Creature +subtype=Spirit +power=2 +toughness=1 +[/card] +[card] name=Skullmead Cauldron auto={T}:life:1 auto={T}{S(*|myhand)}:life:3 @@ -42291,6 +42783,22 @@ power=2 toughness=3 [/card] [card] +name=Sol Grail +auto=choice name(white) && counter(0/0,1,White) all(this) +auto=choice name(blue) && counter(0/0,1,Blue) all(this) +auto=choice name(black) && counter(0/0,1,Black) all(this) +auto=choice name(red) && counter(0/0,1,Red) all(this) +auto=choice name(green) && counter(0/0,1,Green) all(this) +auto=this(counter{0/0.1.White}) {T}:Add{W} +auto=this(counter{0/0.1.Blue}) {T}:Add{U} +auto=this(counter{0/0.1.Black}) {T}:Add{B} +auto=this(counter{0/0.1.Red}) {T}:Add{R} +auto=this(counter{0/0.1.Green}) {T}:Add{G} +text=As Sol Grail enters the battlefield, choose a color. -- {T}: Add one mana of the chosen color to your mana pool. +mana={3} +type=Artifact +[/card] +[card] name=Sol Ring auto={T}:Add {2} text={T}: Add {2} to your mana pool. @@ -44956,6 +45464,23 @@ power=4 toughness=4 [/card] [card] +name=Subterranean Hangar +auto=tap +auto={2}{T}:counter(0/0,1,Storage) +auto={T}{C(0/0,-1,Storage)}:name(Remove 1 Counters) && add{B} +auto={T}{C(0/0,-2,Storage)}:name(Remove 2 Counters) && add{B}{B} +auto={T}{C(0/0,-3,Storage)}:name(Remove 3 Counters) && add{B}{B}{B} +auto={T}{C(0/0,-4,Storage)}:name(Remove 4 Counters) && add{B}{B}{B}{B} +auto={T}{C(0/0,-5,Storage)}:name(Remove 5 Counters) && add{B}{B}{B}{B}{B} +auto={T}{C(0/0,-6,Storage)}:name(Remove 6 Counters) && add{B}{B}{B}{B}{B}{B} +auto={T}{C(0/0,-7,Storage)}:name(Remove 7 Counters) && add{B}{B}{B}{B}{B}{B}{B} +auto={T}{C(0/0,-8,Storage)}:name(Remove 8 Counters) && add{B}{B}{B}{B}{B}{B}{B}{B} +auto={T}{C(0/0,-9,Storage)}:name(Remove 9 Counters) && add{B}{B}{B}{B}{B}{B}{B}{B}{B} +auto={T}{C(0/0,-10,Storage)}:name(Remove 10 Counters) && add{B}{B}{B}{B}{B}{B}{B}{B}{B}{B} +text=Subterranean Hangar enters the battlefield tapped. -- {T}: Put a storage counter on Subterranean Hangar. -- {T}, Remove any number of storage counters from Subterranean Hangar: Add {B} to your mana pool for each storage counter removed this way. +type=Land +[/card] +[card] name=Subterranean Shambler auto=damage:1 all(creature[-flying]) && damage:1 all(player) auto=@movedTo(this|exile,graveyard,hand,library) from(battlefield):damage:1 all(creature[-flying]) && damage:1 all(player) @@ -45073,18 +45598,6 @@ power=4 toughness=4 [/card] [card] -name=Sun Titan -abilities=vigilance -auto=may moveto(myBattlefield) target(*[manacost<=3]|mygraveyard) -auto=lord(sun titan[attacking]|myBattlefield) {0}:moveto(myBattlefield) target(*[manacost<=3]|mygraveyard) limit:1 -text=Vigilance -- Whenever Sun Titan enters the battlefield or attacks, you may return target permanent card with converted mana cost 3 or less from your graveyard to the battlefield. -mana={4}{W} -type=Creature -subtype=Giant -power=6 -toughness=6 -[/card] -[card] name=Sunastian Falconer auto={T}:Add {2} text={T}: Add {2} to your mana pool. @@ -46223,6 +46736,22 @@ mana={2}{W} type=Enchantment [/card] [card] +name=Teferi's Moat +auto=choice name(white) && counter(0/0,1,White) all(this) +auto=choice name(blue) && counter(0/0,1,Blue) all(this) +auto=choice name(black) && counter(0/0,1,Black) all(this) +auto=choice name(red) && counter(0/0,1,Red) all(this) +auto=choice name(green) && counter(0/0,1,Green) all(this) +auto=this(counter{0/0.1.White}) lord(creature[white;-flying]|opponentBattlefield) cantattack +auto=this(counter{0/0.1.Blue}) lord(creature[blue;-flying]|opponentBattlefield) cantattack +auto=this(counter{0/0.1.Black}) lord(creature[black;-flying]|opponentBattlefield) cantattack +auto=this(counter{0/0.1.Red}) lord(creature[red;-flying]|opponentBattlefield) cantattack +auto=this(counter{0/0.1.Green}) lord(creature[green;-flying]|opponentBattlefield) cantattack +text=As Teferi's Moat enters the battlefield, choose a color. -- Creatures of the chosen color without flying can't attack you. +mana={3}{W}{U} +type=Enchantment +[/card] +[card] name=Tek auto=aslongas(forest|myBattlefield) trample auto=aslongas(island|myBattlefield) flying @@ -47095,6 +47624,15 @@ mana={G}{G} type=Enchantment [/card] [card] +name=Thoughtseize +target=*[-land]|opponenthand +auto=moveTo(graveyard) +auto=life:-2 controller +text=Target player reveals his or her hand. You choose a nonland card from it. That player discards that card. You lose 2 life. +mana={B} +type=Sorcery +[/card] +[card] name=Thoughtweft Gambit auto=tap all(creature|opponentBattlefield) auto=untap all(creature|myBattlefield) @@ -51019,6 +51557,26 @@ power=2 toughness=2 [/card] [card] +name=Voice of All +abilities=flying +auto=choice name(white) && counter(0/0,1,White) all(this) +auto=choice name(blue) && counter(0/0,1,Blue) all(this) +auto=choice name(black) && counter(0/0,1,Black) all(this) +auto=choice name(red) && counter(0/0,1,Red) all(this) +auto=choice name(green) && counter(0/0,1,Green) all(this) +auto=this(counter{0/0.1.White}) protection from white +auto=this(counter{0/0.1.Blue}) protection from blue +auto=this(counter{0/0.1.Black}) protection from black +auto=this(counter{0/0.1.Red}) protection from red +auto=this(counter{0/0.1.Green}) protection from green +text=Flying (This creature can't be blocked except by creatures with flying or reach.) -- As Voice of All enters the battlefield, choose a color. -- Voice of All has protection from the chosen color. (It can't be blocked, targeted, dealt damage, or enchanted by anything of the chosen color.) +mana={2}{W}{W} +type=Creature +subtype=Angel +power=2 +toughness=2 +[/card] +[card] name=Voice of Duty abilities=flying,protection from green text=Flying, protection from green @@ -51878,6 +52436,25 @@ power=1 toughness=1 [/card] [card] +name=Ward Sliver +auto=choice name(white) && counter(0/0,1,White) all(this) +auto=choice name(blue) && counter(0/0,1,Blue) all(this) +auto=choice name(black) && counter(0/0,1,Black) all(this) +auto=choice name(red) && counter(0/0,1,Red) all(this) +auto=choice name(green) && counter(0/0,1,Green) all(this) +auto=this(counter{0/0.1.White}) lord(sliver) protection from white +auto=this(counter{0/0.1.Blue}) lord(sliver) protection from blue +auto=this(counter{0/0.1.Black}) lord(sliver) protection from black +auto=this(counter{0/0.1.Red}) lord(sliver) protection from red +auto=this(counter{0/0.1.Green}) lord(sliver) protection from green +text=As Ward Sliver enters the battlefield, choose a color. -- All Slivers have protection from the chosen color. +mana={4}{W} +type=Creature +subtype=Sliver +power=2 +toughness=2 +[/card] +[card] name=Warlord's Axe auto={4}:equip auto=3/1 @@ -52531,6 +53108,23 @@ power=2 toughness=2 [/card] [card] +name=White Mana Battery +auto={2}{T}:counter(0/0,1,Storage) +auto={T}{C(0/0,-1,Storage)}:name(Remove 1 Counters) && add{W} +auto={T}{C(0/0,-2,Storage)}:name(Remove 2 Counters) && add{W}{W} +auto={T}{C(0/0,-3,Storage)}:name(Remove 3 Counters) && add{W}{W}{W} +auto={T}{C(0/0,-4,Storage)}:name(Remove 4 Counters) && add{W}{W}{W}{W} +auto={T}{C(0/0,-5,Storage)}:name(Remove 5 Counters) && add{W}{W}{W}{W}{W} +auto={T}{C(0/0,-6,Storage)}:name(Remove 6 Counters) && add{W}{W}{W}{W}{W}{W} +auto={T}{C(0/0,-7,Storage)}:name(Remove 7 Counters) && add{W}{W}{W}{W}{W}{W}{w} +auto={T}{C(0/0,-8,Storage)}:name(Remove 8 Counters) && add{W}{W}{W}{W}{W}{W}{w}{w} +auto={T}{C(0/0,-9,Storage)}:name(Remove 9 Counters) && add{W}{W}{W}{W}{W}{W}{w}{w}{w} +auto={T}{C(0/0,-10,Storage)}:name(Remove 10 Counters) && add{W}{W}{W}{W}{W}{w}{w}{w}{w}{w} +text={2}, {T}: Put a charge counter on White Mana Battery. -- {T}, Remove any number of charge counters from White Mana Battery: Add {W} to your mana pool, then add an additional {W} to your mana pool for each charge counter removed this way. +mana={4} +type=Artifact +[/card] +[card] name=White Scarab target=creature auto=cantbeblockedby(creature[white]) diff --git a/projects/mtg/bin/Res/sets/primitives/zethaddon.txt b/projects/mtg/bin/Res/sets/primitives/zethaddon.txt index 7927458f3..7f9193a40 100644 --- a/projects/mtg/bin/Res/sets/primitives/zethaddon.txt +++ b/projects/mtg/bin/Res/sets/primitives/zethaddon.txt @@ -2580,24 +2580,6 @@ auto=@movedto(this|exile):counter(0/0.-1.swap) all(Enchantment|mybattlefield) auto=moveto(exile) all(this) [/card] [card] -name=Coldsteel Heart -auto=may token(-78670) && counter(0/0,1,Red) all(this) -auto=may token(-78671) && counter(0/0,1,White) all(this) -auto=may token(-78672) && counter(0/0,1,Green) all(this) -auto=may token(-78673) && counter(0/0,1,Black) all(this) -auto=may token(-78674) && counter(0/0,1,Blue) all(this) -auto=tap -auto=this(counter{0/0.1.Red}) {t}:add{r} -auto=this(counter{0/0.1.white}) {t}:add{w} -auto=this(counter{0/0.1.Green}) {t}:add{g} -auto=this(counter{0/0.1.Black}) {t}:add{b} -auto=this(counter{0/0.1.Blue}) {t}:add{u} -text=Coldsteel Heart enters the battlefield tapped. As Coldsteel Heart enters the battlefield, choose a color. {t}: Add one mana of the chosen color to your mana pool. -type=artifact -subtype=snow -mana={2} -[/card] -[card] name=Red id=-78670 type=nothing @@ -2628,28 +2610,6 @@ type=nothing auto=moveto(exile) all(this) [/card] [card] -name=Paradise Plume -auto=may token(-78670) && counter(0/0,1,Red) all(this) -auto=may token(-78671) && counter(0/0,1,White) all(this) -auto=may token(-78672) && counter(0/0,1,Green) all(this) -auto=may token(-78673) && counter(0/0,1,Black) all(this) -auto=may token(-78674) && counter(0/0,1,Blue) all(this) -auto=tap -auto=this(counter{0/0.1.Red}) {t}:add{r} -auto=this(counter{0/0.1.white}) {t}:add{w} -auto=this(counter{0/0.1.Green}) {t}:add{g} -auto=this(counter{0/0.1.Black}) {t}:add{b} -auto=this(counter{0/0.1.Blue}) {t}:add{u} -auto=@movedto(*[Red]|stack):this(counter{0/0.1.Red}) Life:1 controller -auto=@movedto(*[White]|stack):this(counter{0/0.1.white}) Life:1 controller -auto=@movedto(*[Green]|stack):this(counter{0/0.1.Green}) Life:1 controller -auto=@movedto(*[Black]|stack):this(counter{0/0.1.Black}) Life:1 controller -auto=@movedto(*[blue]|stack):this(counter{0/0.1.Blue}) Life:1 controller -text=As Paradise Plume enters the battlefield, choose a color. Whenever a player casts a spell of the chosen color, you may gain 1 life. {t}: Add one mana of the chosen color to your mana pool. -type=artifact -mana={4} -[/card] -[card] name=Gauntlet of Power auto=may token(-78670) && counter(0/0,1,Red) all(this) auto=may token(-78671) && counter(0/0,1,White) all(this) @@ -2688,26 +2648,6 @@ abilities=flying mana={6}{w}{w}{w} [/card] [card] -name=Order of the Stars -auto=may token(-78670) && counter(0/0,1,Red) all(this) -auto=may token(-78671) && counter(0/0,1,White) all(this) -auto=may token(-78672) && counter(0/0,1,Green) all(this) -auto=may token(-78673) && counter(0/0,1,Black) all(this) -auto=may token(-78674) && counter(0/0,1,Blue) all(this) -auto=this(counter{0/0.1.Red}) protection from(red) -auto=this(counter{0/0.1.white}) protection from(white) -auto=this(counter{0/0.1.Green}) protection from(green) -auto=this(counter{0/0.1.Black}) protection from(black) -auto=this(counter{0/0.1.Blue}) protection from(blue) -text=As Order of the Stars enters the battlefield, choose a color. Order of the Stars has protection from the chosen color. -power=0 -toughness=1 -type=Creature -abilities=defender -subtype=human cleric -mana={W} -[/card] -[card] name=Curse of Wizardry auto=may token(-78670) && counter(0/0,1,Red) all(this) auto=may token(-78671) && counter(0/0,1,White) all(this) @@ -2743,134 +2683,6 @@ type=enchantment mana={3}{u}{u} [/card] [card] -name=Quirion Elves -auto=may token(-78670) && counter(0/0,1,Red) all(this) -auto=may token(-78671) && counter(0/0,1,White) all(this) -auto=may token(-78672) && counter(0/0,1,Green) all(this) -auto=may token(-78673) && counter(0/0,1,Black) all(this) -auto=may token(-78674) && counter(0/0,1,Blue) all(this) -auto={t}:add{g} -auto=this(counter{0/0.1.Red}) {t}:add{r} -auto=this(counter{0/0.1.white}) {t}:add{w} -auto=this(counter{0/0.1.Green}) {t}:add{g} -auto=this(counter{0/0.1.Black}) {t}:add{b} -auto=this(counter{0/0.1.Blue}) {t}:add{u} -text=As Quirion Elves enters the battlefield, choose a color. {t}: Add to your mana pool. {t}: Add one mana of the chosen color to your mana pool. -type=creature -power=1 -toughness=1 -subtype=elf druid -mana={1}{g} -[/card] -[card] -name=Silhana Starfletcher -auto=may token(-78670) && counter(0/0,1,Red) all(this) -auto=may token(-78671) && counter(0/0,1,White) all(this) -auto=may token(-78672) && counter(0/0,1,Green) all(this) -auto=may token(-78673) && counter(0/0,1,Black) all(this) -auto=may token(-78674) && counter(0/0,1,Blue) all(this) -auto=this(counter{0/0.1.Red}) {t}:add{r} -auto=this(counter{0/0.1.white}) {t}:add{w} -auto=this(counter{0/0.1.Green}) {t}:add{g} -auto=this(counter{0/0.1.Black}) {t}:add{b} -auto=this(counter{0/0.1.Blue}) {t}:add{u} -text=Reach (This creature can block creatures with flying.) As Silhana Starfletcher enters the battlefield, choose a color. {t}: Add one mana of the chosen color to your mana pool. -type=creature -power=1 -toughness=3 -subtype=elf druid archer -abilities=reach -mana={2}{g} -[/card] -[card] -name=Voice of All -auto=may token(-78670) && counter(0/0,1,Red) all(this) -auto=may token(-78671) && counter(0/0,1,White) all(this) -auto=may token(-78672) && counter(0/0,1,Green) all(this) -auto=may token(-78673) && counter(0/0,1,Black) all(this) -auto=may token(-78674) && counter(0/0,1,Blue) all(this) -auto=this(counter{0/0.1.Red}) protection from(red) -auto=this(counter{0/0.1.white}) protection from(white) -auto=this(counter{0/0.1.Green}) protection from(green) -auto=this(counter{0/0.1.Black}) protection from(black) -auto=this(counter{0/0.1.Blue}) protection from(blue) -text=Flying (This creature can't be blocked except by creatures with flying or reach.) As Voice of All enters the battlefield, choose a color. Voice of All has protection from the chosen color. -power=2 -toughness=2 -type=Creature -abilities=flying -subtype=angel -mana={W}{w}{2} -[/card] -[card] -name=Ward Sliver -auto=may token(-78670) && counter(0/0,1,Red) all(this) -auto=may token(-78671) && counter(0/0,1,White) all(this) -auto=may token(-78672) && counter(0/0,1,Green) all(this) -auto=may token(-78673) && counter(0/0,1,Black) all(this) -auto=may token(-78674) && counter(0/0,1,Blue) all(this) -auto=this(counter{0/0.1.Red}) lord(sliver) protection from(red) -auto=this(counter{0/0.1.white}) lord(sliver) protection from(white) -auto=this(counter{0/0.1.Green}) lord(sliver) protection from(green) -auto=this(counter{0/0.1.Black}) lord(sliver) protection from(black) -auto=this(counter{0/0.1.Blue}) lord(sliver) protection from(blue) -text=As Ward Sliver enters the battlefield, choose a color. All Slivers have protection from the chosen color. -power=2 -toughness=2 -type=Creature -subtype=Sliver -mana={4}{w} -[/card] -[card] -name=Sol Grail -auto=may token(-78670) && counter(0/0,1,Red) all(this) -auto=may token(-78671) && counter(0/0,1,White) all(this) -auto=may token(-78672) && counter(0/0,1,Green) all(this) -auto=may token(-78673) && counter(0/0,1,Black) all(this) -auto=may token(-78674) && counter(0/0,1,Blue) all(this) -auto=this(counter{0/0.1.Red}) {t}:add{r} -auto=this(counter{0/0.1.white}) {t}:add{w} -auto=this(counter{0/0.1.Green}) {t}:add{g} -auto=this(counter{0/0.1.Black}) {t}:add{b} -auto=this(counter{0/0.1.Blue}) {t}:add{u} -text=As Sol Grail enters the battlefield, choose a color. {t}: Add one mana of the chosen color to your mana pool. -type=artifact -mana={3} -[/card] -#needed to edit the name in the TSP card dat and remove the comma and the period was messing with the code -[card] -name=Sarpadian Empires Vol VII -auto=may token(-78670) && counter(0/0,1,Red) all(this) -auto=may token(-78671) && counter(0/0,1,White) all(this) -auto=may token(-78672) && counter(0/0,1,Green) all(this) -auto=may token(-78673) && counter(0/0,1,Black) all(this) -auto=may token(-78674) && counter(0/0,1,Blue) all(this) -auto=this(counter{0/0.1.Red}) {t}:token(Goblin,creature Goblin, 1/1, Red) -auto=this(counter{0/0.1.white}) {t}:token(Citizen,creature Citizen, 1/1, White) -auto=this(counter{0/0.1.Green}) {t}:token(Saproling,creature saproling, 1/1, green) -auto=this(counter{0/0.1.Black}) {t}:token(Thrull,creature Thrull, 1/1, Black) -auto=this(counter{0/0.1.Blue}) {t}:token(Camarid,creature Camarid, 1/1, Blue) -text=As Sarpadian Empires, Vol. VII enters the battlefield, choose white Citizen, blue Camarid, black Thrull, red Goblin, or green Saproling. {3},{t} : Put a 1/1 creature token of the chosen color and type onto the battlefield. -type=artifact -mana={3} -[/card] -[card] -name=Teferi's Moat -auto=may token(-78670) && counter(0/0,1,Red) all(this) -auto=may token(-78671) && counter(0/0,1,White) all(this) -auto=may token(-78672) && counter(0/0,1,Green) all(this) -auto=may token(-78673) && counter(0/0,1,Black) all(this) -auto=may token(-78674) && counter(0/0,1,Blue) all(this) -auto=this(counter{0/0.1.Red}) lord(creature[Red;-flying]|opponentbattlefield) cantattack -auto=this(counter{0/0.1.white}) lord(creature[white;-flying]|opponentbattlefield) cantattack -auto=this(counter{0/0.1.Green}) lord(creature[Green;-flying]|opponentbattlefield) cantattack -auto=this(counter{0/0.1.Black}) lord(creature[Black;-flying]|opponentbattlefield) cantattack -auto=this(counter{0/0.1.Blue}) lord(creature[Blue;-flying]|opponentbattlefield) cantattack -text=As Teferi's Moat enters the battlefield, choose a color. Creatures of the chosen color without flying can't attack you. -type=enchantment -mana={3}{w}{u} -[/card] -[card] name=Utopia Sprawl target=land auto=may token(-78670) && counter(0/0,1,Red) all(this) @@ -2885,37 +2697,6 @@ subtype=aura mana={G} [/card] [card] -name=Chameleon Spirit -auto=may token(-78670) && counter(0/0,1,Red) all(this) -auto=may token(-78671) && counter(0/0,1,White) all(this) -auto=may token(-78672) && counter(0/0,1,Green) all(this) -auto=may token(-78673) && counter(0/0,1,Black) all(this) -auto=may token(-78674) && counter(0/0,1,Blue) all(this) -auto=this(counter{0/0.1.Red}) foreach(*[red]|opponentbattlefield) 1/1 -auto=this(counter{0/0.1.white}) foreach(*[white]|opponentbattlefield) 1/1 -auto=this(counter{0/0.1.Green}) foreach(*[Green]|opponentbattlefield) 1/1 -auto=this(counter{0/0.1.Black}) foreach(*[Black]|opponentbattlefield) 1/1 -auto=this(counter{0/0.1.Blue}) foreach(*[Blue]|opponentbattlefield) 1/1 -text=As Chameleon Spirit enters the battlefield, choose a color. Chameleon Spirit's power and toughness are each equal to the number of permanents of the chosen color your opponents control. -type=creature -power=0 -toughness=0 -subtype=Illusion Spirit -abilities=reach -mana={3}{u} -[/card] -[card] -name=Searing Rays -auto=may token(-78670) && foreach(creature[red]|opponentbattlefield) Damage:1 all(player) -auto=may token(-78671) && foreach(creature[white]|opponentbattlefield) Damage:1 all(player) -auto=may token(-78672) && foreach(creature[green]|opponentbattlefield) Damage:1 all(player) -auto=may token(-78673) && foreach(creature[black]|opponentbattlefield) Damage:1 all(player) -auto=may token(-78674) && foreach(creature[blue]|opponentbattlefield) Damage:1 all(player) -text=Choose a color. Searing Rays deals damage to each player equal to the number of creatures of that color that player controls. -type=sorcery -mana={2}{R} -[/card] -[card] name=Cursed Rack auto=@each opponent cleanup: foreach(*|opponenthand) discard:1 opponent >4 text=As Cursed Rack enters the battlefield, choose an opponent. The chosen player's maximum hand size is four. @@ -2945,13 +2726,6 @@ type=artifact mana={3} [/card] [card] -name=Dolmen Gate -auto=@each mycombatbegins:preventAllCombatDamage to(creature|mybattlefield) ueot -text=Prevent all combat damage that would be dealt to attacking creatures you control. -type=artifact -mana={2} -[/card] -[card] name=Eldrazi Monument auto=lord(creature|myBattlefield) 1/1 auto=lord(creature|mybattlefield) flying @@ -3151,296 +2925,6 @@ mana={4} [/card] #reveal discard series [card] -name=Coercion -auto=counter(0/0,1,mycard) all(*|myhand) && moveto(myhand) all(*|opponenthand) -auto=token(-88078) -text=Target opponent reveals his or her hand. You choose a card from it. That player discards that card. -type=sorcery -mana={2}{B} -[/card] -[card] -name=choose one card -auto=counter(0/0,1,choice) target(*[-counter{0/0.1.mycard}]|myhand) -auto=@movedto(this|exile):token(-88079) -auto=moveto(exile) all(this) -id=-88078 -type=nothing -[/card] -[card] -name=destroy my choice -auto=moveto(opponentgraveyard) all(*[counter{0/0.1.choice}]|myhand) -auto=@movedto(this|exile):token(-88080) -auto=moveto(exile) all(this) -id=-88079 -type=nothing -[/card] -[card] -name=card action -auto=moveto(opponenthand) all(*[-counter{0/0.1.mycard}]|myhand) && counter(0/0,-1,mycard) all(*|myhand) -auto=@moveto(exile) all(this) -id=-88080 -type=nothing -[/card] -[card] -name=Duress -auto=counter(0/0,1,mycard) all(*|myhand) && moveto(myhand) all(*|opponenthand) -auto=token(-88012) -text=Target opponent reveals his or her hand. You choose a noncreature, nonland card from it. That player discards that card. -type=sorcery -mana={B} -[/card] -[card] -name=choose one card -auto=counter(0/0,1,choice) target(*[-counter{0/0.1.mycard};-creature;-land]|myhand) -auto=@movedto(this|exile):token(-88013) -auto=moveto(exile) all(this) -id=-88012 -type=nothing -[/card] -[card] -name=destroy my choice -auto=moveto(opponentgraveyard) all(*[counter{0/0.1.choice}]|myhand) -auto=@movedto(this|exile):token(-88014) -auto=moveto(exile) all(this) -id=-88013 -type=nothing -[/card] -[card] -name=return thier cards -auto=moveto(opponenthand) all(*[-counter{0/0.1.mycard}]|myhand) && counter(0/0,-1,mycard) all(*|myhand) -auto=@moveto(exile) all(this) -id=-88014 -type=nothing -[/card] -[card] -name=Castigate -auto=counter(0/0,1,mycard) all(*|myhand) && moveto(myhand) all(*|opponenthand) -auto=token(-88112) -text=Target opponent reveals his or her hand. You choose a nonland card from it and exile that card. -type=sorcery -mana={B}{w} -[/card] -[card] -name=choose one card -auto=counter(0/0,1,choice) target(*[-counter{0/0.1.mycard};-land]|myhand) -auto=@movedto(this|exile):token(-88113) -auto=moveto(exile) all(this) -id=-88112 -type=nothing -[/card] -[card] -name=destroy my choice -auto=moveto(exile) all(*[counter{0/0.1.choice}]|myhand) -auto=@movedto(this|exile):token(-88114) -auto=moveto(exile) all(this) -id=-88113 -type=nothing -[/card] -[card] -name=return thier cards -auto=moveto(opponenthand) all(*[-counter{0/0.1.mycard}]|myhand) && counter(0/0,-1,mycard) all(*|myhand) -auto=@moveto(exile) all(this) -id=-88114 -type=nothing -[/card] -[card] -name=He Who Hungers -auto={B}{s(creature[spirit]|mybattlefield)}:counter(0/0,1,mycard) all(*|myhand) && moveto(myhand) all(*|opponenthand) && token(-88212) assorcery -text={1}, Sacrifice a Spirit: Target opponent reveals his or her hand. You choose a card from it. That player discards that card. Activate this ability only any time you could cast a sorcery. Soulshift 4 -auto=@movedTo(this|mygraveyard) from(myBattlefield):may moveTo(myhand) target(other spirit[manacost<=4]|mygraveyard) -type=legendary creature -subtype=spirit -abilities=flying -power=3 -toughness=2 -mana={4}{b} -[/card] -[card] -name=Mind Slash -auto={B}{s(creature|mybattlefield)}:counter(0/0,1,mycard) all(*|myhand) && moveto(myhand) all(*|opponenthand) && token(-88212) -text={b}, Sacrifice a creature: Target opponent reveals his or her hand. You choose a card from it. That player discards that card. Activate this ability only any time you could cast a sorcery. -type=enchantment -mana={1}{b}{b} -[/card] -[card] -name=choose one card -auto=counter(0/0,1,choice) target(*[-counter{0/0.1.mycard}]|myhand) -auto=@movedto(this|exile):token(-88213) -auto=moveto(exile) all(this) -id=-88212 -type=nothing -[/card] -[card] -name=destroy my choice -auto=moveto(opponentgraveyard) all(*[counter{0/0.1.choice}]|myhand) -auto=@movedto(this|exile):token(-88214) -auto=moveto(exile) all(this) -id=-88213 -type=nothing -[/card] -[card] -name=return thier cards -auto=moveto(opponenthand) all(*[-counter{0/0.1.mycard}]|myhand) && counter(0/0,-1,mycard) all(*|myhand) -auto=@moveto(exile) all(this) -id=-88214 -type=nothing -[/card] -[card] -name=Ostracize -auto=counter(0/0,1,mycard) all(*|myhand) && moveto(myhand) all(*|opponenthand) -auto=token(-88578) -text=Target opponent reveals his or her hand. You choose a creature card from it. That player discards that card. -type=sorcery -mana={B} -[/card] -[card] -name=choose one card -auto=counter(0/0,1,choice) target(*[-counter{0/0.1.mycard};creature]|myhand) -auto=@movedto(this|exile):token(-88579) -auto=moveto(exile) all(this) -id=-88578 -type=nothing -[/card] -[card] -name=destroy my choice -auto=moveto(opponentgraveyard) all(*[counter{0/0.1.choice}]|myhand) -auto=@movedto(this|exile):token(-88580) -auto=moveto(exile) all(this) -id=-88579 -type=nothing -[/card] -[card] -name=return thier cards -auto=moveto(opponenthand) all(*[-counter{0/0.1.mycard}]|myhand) && counter(0/0,-1,mycard) all(*|myhand) -auto=@moveto(exile) all(this) -id=-88580 -type=nothing -[/card] -[card] -name=Distress -auto=counter(0/0,1,mycard) all(*|myhand) && moveto(myhand) all(*|opponenthand) -auto=token(-83112) -text=Target opponent reveals his or her hand. You choose a nonland card from it and exile that card. -type=sorcery -mana={B}{B} -[/card] -[card] -name=choose one card -auto=counter(0/0,1,choice) target(*[-counter{0/0.1.mycard};-land]|myhand) -auto=@movedto(this|exile):token(-83113) -auto=moveto(exile) all(this) -id=-83112 -type=nothing -[/card] -[card] -name=destroy my choice -auto=moveto(exile) all(*[counter{0/0.1.choice}]|myhand) -auto=@movedto(this|exile):token(-83114) -auto=moveto(exile) all(this) -id=-83113 -type=nothing -[/card] -[card] -name=return thier cards -auto=moveto(opponenthand) all(*[-counter{0/0.1.mycard}]|myhand) && counter(0/0,-1,mycard) all(*|myhand) -auto=@moveto(exile) all(this) -id=-83114 -type=nothing -[/card] -[card] -name=Perish the Thought -auto=counter(0/0,1,mycard) all(*|myhand) && moveto(myhand) all(*|opponenthand) -auto=token(-88678) -text=Target opponent reveals his or her hand. You choose a card from it. That player shuffles that card into his or her library. -type=sorcery -mana={2}{B} -[/card] -[card] -name=choose one card -auto=counter(0/0,1,choice) target(*[-counter{0/0.1.mycard}]|myhand) -auto=@movedto(this|exile):token(-88679) -auto=moveto(exile) all(this) -id=-88678 -type=nothing -[/card] -[card] -name=destroy my choice -auto=moveto(opponentlibrary) all(*[counter{0/0.1.choice}]|myhand) -auto=@movedto(this|exile):token(-88680) -auto=moveto(exile) all(this) -id=-88679 -type=nothing -[/card] -[card] -name=return thier cards -auto=moveto(opponenthand) all(*[-counter{0/0.1.mycard}]|myhand) && counter(0/0,-1,mycard) all(*|myhand) -auto=@moveto(exile) all(this) -id=-88680 -type=nothing -[/card] -[card] -name=Encroach -auto=counter(0/0,1,mycard) all(*|myhand) && moveto(myhand) all(*|opponenthand) -auto=token(-78778) -text=Target opponent reveals his or her hand. You choose an artifact card from it. That player discards that card. -type=sorcery -mana={B} -[/card] -[card] -name=choose one card -auto=counter(0/0,1,choice) target(land[-counter{0/0.1.mycard};-basic]|myhand) -auto=@movedto(this|exile):token(-78779) -auto=moveto(exile) all(this) -id=-78778 -type=nothing -[/card] -[card] -name=destroy my choice -auto=moveto(opponentgraveyard) all(*[counter{0/0.1.choice}]|myhand) -auto=@movedto(this|exile):token(-78780) -auto=moveto(exile) all(this) -id=-78779 -type=nothing -[/card] -[card] -name=return thier cards -auto=moveto(opponenthand) all(*[-counter{0/0.1.mycard}]|myhand) && counter(0/0,-1,mycard) all(*|myhand) -auto=@moveto(exile) all(this) -id=-78780 -type=nothing -[/card] -[card] -name=Shattered Dreams -auto=counter(0/0,1,mycard) all(*|myhand) && moveto(myhand) all(*|opponenthand) -auto=token(-88778) -text=Target opponent reveals his or her hand. You choose an artifact card from it. That player discards that card. -type=sorcery -mana={B} -[/card] -[card] -name=choose one card -auto=counter(0/0,1,choice) target(artifact[-counter{0/0.1.mycard}]|myhand) -auto=@movedto(this|exile):token(-88779) -auto=moveto(exile) all(this) -id=-88778 -type=nothing -[/card] -[card] -name=destroy my choice -auto=moveto(opponentgraveyard) all(*[counter{0/0.1.choice}]|myhand) -auto=@movedto(this|exile):token(-88780) -auto=moveto(exile) all(this) -id=-88779 -type=nothing -[/card] -[card] -name=return thier cards -auto=moveto(opponenthand) all(*[-counter{0/0.1.mycard}]|myhand) && counter(0/0,-1,mycard) all(*|myhand) -auto=@moveto(exile) all(this) -id=-88780 -type=nothing -[/card] -[card] name=Ghastlord of Fugue auto=@damaged(player) from(this):counter(0/0,1,mycard) all(*|myhand) && moveto(myhand) all(*|opponenthand) && token(-58112) assorcery text=Ghastlord of Fugue is unblockable. Whenever Ghastlord of Fugue deals combat damage to a player, that player reveals his or her hand. You choose a card from it. That player exiles that card. @@ -3475,69 +2959,6 @@ id=-58114 type=nothing [/card] [card] -name=Psychic Spear -auto=counter(0/0,1,mycard) all(*|myhand) && moveto(myhand) all(*|opponenthand) -auto=token(-48578) -text=Target player reveals his or her hand. You choose a Spirit or Arcane card from it. That player discards that card. -type=sorcery -mana={B} -[/card] -[card] -name=choose one card -auto=counter(0/0,1,choice) target(*[-counter{0/0.1.mycard};spirit;arcane]|myhand) -auto=@movedto(this|exile):token(-48579) -auto=moveto(exile) all(this) -id=-48578 -type=nothing -[/card] -[card] -name=destroy my choice -auto=moveto(opponentgraveyard) all(*[counter{0/0.1.choice}]|myhand) -auto=@movedto(this|exile):token(-48580) -auto=moveto(exile) all(this) -id=-48579 -type=nothing -[/card] -[card] -name=return thier cards -auto=moveto(opponenthand) all(*[-counter{0/0.1.mycard}]|myhand) && counter(0/0,-1,mycard) all(*|myhand) -auto=@moveto(exile) all(this) -id=-48580 -type=nothing -[/card] -[card] -name=Thoughtseize -auto=life:-2 controller -auto=counter(0/0,1,mycard) all(*|myhand) && moveto(myhand) all(*|opponenthand) -auto=token(-23112) -text=Target player reveals his or her hand. You choose a nonland card from it. That player discards that card. You lose 2 life. -type=sorcery -mana={B} -[/card] -[card] -name=choose one card -auto=counter(0/0,1,choice) target(*[-counter{0/0.1.mycard};-land]|myhand) -auto=@movedto(this|exile):token(-23113) -auto=moveto(exile) all(this) -id=-23112 -type=nothing -[/card] -[card] -name=destroy my choice -auto=moveto(opponentgraveyard) all(*[counter{0/0.1.choice}]|myhand) -auto=@movedto(this|exile):token(-23114) -auto=moveto(exile) all(this) -id=-23113 -type=nothing -[/card] -[card] -name=return thier cards -auto=moveto(opponenthand) all(*[-counter{0/0.1.mycard}]|myhand) && counter(0/0,-1,mycard) all(*|myhand) -auto=@moveto(exile) all(this) -id=-23114 -type=nothing -[/card] -[card] name=Treacherous Urge auto=counter(0/0,1,mycard) all(*|myhand) && moveto(myhand) all(*|opponenthand) auto=token(-13112) @@ -3599,20 +3020,6 @@ type=nothing [/card] #final discard reveal [card] -name=Hair-Strung Koto -auto={0}:tap target(creature[-tapped]|mybattlefield) && token(-30012) -text=Tap an untapped creature you control: Target player puts the top card of his or her library into his or her graveyard.step. -type=artifact -mana={6} -[/card] -[card] -name=hair-strung deplete -id=-30012 -type=nothing -auto=target(player) deplete:1 -auto=moveto(exile) all(this) -[/card] -[card] name=Hammer of Ruin auto=@damaged(player) from(mytgt):bury target(equipment|opponentbattlefield) auto=2/0 @@ -4058,446 +3465,6 @@ auto=moveto(exile) all(this) type=nothing [/card] [card] -name=Black Mana Battery -auto={2}{t}:Counter(0/0,1,charge) -auto={t}:add{b} -auto={counter(0/0,-1,charge}{t}:token(-12031) && Add{b} -auto={counter(0/0,-2,charge}{t}:token(-12032) && Add{b} -auto={counter(0/0,-3,charge}{t}:token(-12033) && Add{b} -auto={counter(0/0,-4,charge}{t}:token(-12034) && Add{b} -auto={counter(0/0,-5,charge}{t}:token(-12035) && Add{b} -auto={counter(0/0,-6,charge}{t}:token(-12036) && Add{b} -auto={counter(0/0,-7,charge}{t}:token(-12037) && Add{b} -auto={counter(0/0,-8,charge}{t}:token(-12038) && Add{b} -auto={counter(0/0,-9,charge}{t}:token(-12039) && Add{b} -auto={counter(0/0,-10,charge}{t}:token(-12040) && Add{b} -text={2}, {T}: Put a charge counter on Black Mana Battery. {T}, Remove any number of charge counters from Black Mana Battery: Add {B} to your mana pool, then add an additional {B} to your mana pool for each charge counter removed this way. -type=artifact -mana={4} -[/card] -[card] -name=2 Mana -id=-12031 -auto=add{B} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=3 Mana -id=-12032 -auto=Add{b}{B} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=4 Mana -id=-12033 -auto=Add{b}{B}{B} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=5 Mana -id=-12034 -auto=Add{b}{B}{B}{B} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=6 Mana -id=-12035 -auto=Add{b}{B}{B}{B}{B} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=7 Mana -id=-12036 -auto=Add{b}{B}{B}{B}{B}{B} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=8 Mana -id=-12037 -auto=Add{b}{B}{B}{B}{B}{B}{B} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=9 Mana -id=-12038 -auto=Add{b}{B}{B}{B}{B}{B}{B}{B} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=10 Mana -id=-12039 -auto=Add{b}{B}{B}{B}{B}{B}{B}{B}{B} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=11 Mana -id=-12040 -auto=Add{b}{B}{B}{B}{B}{B}{B}{B}{B}{B}{B} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=Blue Mana Battery -auto={2}{t}:Counter(0/0,1,charge) -auto={t}:add{u} -auto={counter(0/0,-1,charge}{t}:token(-12041) && Add{U} -auto={counter(0/0,-2,charge}{t}:token(-12042) && Add{U} -auto={counter(0/0,-3,charge}{t}:token(-12043) && Add{U} -auto={counter(0/0,-4,charge}{t}:token(-12044) && Add{u} -auto={counter(0/0,-5,charge}{t}:token(-12045) && Add{u} -auto={counter(0/0,-6,charge}{t}:token(-12046) && Add{u} -auto={counter(0/0,-7,charge}{t}:token(-12047) && Add{u} -auto={counter(0/0,-8,charge}{t}:token(-12048) && Add{u} -auto={counter(0/0,-9,charge}{t}:token(-12049) && Add{u} -auto={counter(0/0,-10,charge}{t}:token(-12050) && Add{u} -text={2}, {T}: Put a charge counter on Black Mana Battery. {T}, Remove any number of charge counters from Blue Mana Battery: Add {U} to your mana pool, then add an additional {U} to your mana pool for each charge counter removed this way. -type=artifact -mana={4} -[/card] -[card] -name=2 Mana -id=-12041 -auto=add{u} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=3 Mana -id=-12042 -auto=Add{u}{u} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=4 Mana -id=-12043 -auto=Add{u}{u}{u} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=5 Mana -id=-12044 -auto=Add{u}{u}{u}{u} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=6 Mana -id=-12045 -auto=Add{u}{u}{u}{u}{u} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=7 Mana -id=-12046 -auto=Add{u}{u}{u}{u}{u}{u} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=8 Mana -id=-12047 -auto=Add{u}{u}{u}{u}{u}{u}{u} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=9 Mana -id=-12048 -auto=Add{u}{u}{u}{u}{u}{u}{u}{u} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=10 Mana -id=-12049 -auto=Add{u}{u}{u}{u}{u}{u}{u}{u}{u} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=11 Mana -id=-12050 -auto=Add{u}{u}{u}{u}{u}{u}{u}{u}{u}{u}{u} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=Green Mana Battery -auto={2}{t}:Counter(0/0,1,charge) -auto={t}:add{g} -auto={counter(0/0,-1,charge}{t}:token(-12051) && Add{g} -auto={counter(0/0,-2,charge}{t}:token(-12052) && Add{g} -auto={counter(0/0,-3,charge}{t}:token(-12053) && Add{g} -auto={counter(0/0,-4,charge}{t}:token(-12054) && Add{g} -auto={counter(0/0,-5,charge}{t}:token(-12055) && Add{g} -auto={counter(0/0,-6,charge}{t}:token(-12056) && Add{g} -auto={counter(0/0,-7,charge}{t}:token(-12057) && Add{g} -auto={counter(0/0,-8,charge}{t}:token(-12058) && Add{g} -auto={counter(0/0,-9,charge}{t}:token(-12059) && Add{g} -auto={counter(0/0,-10,charge}{t}:token(-12060) && Add{g} -text={2}, {T}: Put a charge counter on Black Mana Battery. {T}, Remove any number of charge counters from Blue Mana Battery: Add {U} to your mana pool, then add an additional {U} to your mana pool for each charge counter removed this way. -type=artifact -mana={4} -[/card] -[card] -name=2 Mana -id=-12051 -auto=add{g} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=3 Mana -id=-12052 -auto=Add{g}{g} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=4 Mana -id=-12053 -auto=Add{g}{g}{g} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=5 Mana -id=-12054 -auto=Add{g}{g}{g}{g} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=6 Mana -id=-12055 -auto=Add{g}{g}{g}{g}{g} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=7 Mana -id=-12056 -auto=Add{g}{g}{g}{g}{g}{g} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=8 Mana -id=-12057 -auto=Add{g}{g}{g}{g}{g}{g}{g} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=9 Mana -id=-12058 -auto=Add{g}{g}{g}{g}{g}{g}{g}{g} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=10 Mana -id=-12059 -auto=Add{g}{g}{g}{g}{g}{g}{g}{g}{g} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=11 Mana -id=-12060 -auto=Add{g}{g}{g}{g}{g}{g}{g}{g}{g}{g} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=Red Mana Battery -auto={2}{t}:Counter(0/0,1,charge) -auto={t}:add{r} -auto={counter(0/0,-1,charge}{t}:token(-12061) && Add{r} -auto={counter(0/0,-2,charge}{t}:token(-12062) && Add{r} -auto={counter(0/0,-3,charge}{t}:token(-12063) && Add{r} -auto={counter(0/0,-4,charge}{t}:token(-12064) && Add{r} -auto={counter(0/0,-5,charge}{t}:token(-12065) && Add{r} -auto={counter(0/0,-6,charge}{t}:token(-12066) && Add{r} -auto={counter(0/0,-7,charge}{t}:token(-12067) && Add{r} -auto={counter(0/0,-8,charge}{t}:token(-12068) && Add{r} -auto={counter(0/0,-9,charge}{t}:token(-12069) && Add{r} -auto={counter(0/0,-10,charge}{t}:token(-12070) && Add{r} -text={2}, {T}: Put a charge counter on Black Mana Battery. {T}, Remove any number of charge counters from Blue Mana Battery: Add {U} to your mana pool, then add an additional {U} to your mana pool for each charge counter removed this way. -type=artifact -mana={4} -[/card] -[card] -name=2 Mana -id=-12061 -auto=add{r} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=3 Mana -id=-12062 -auto=Add{r}{r} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=4 Mana -id=-12063 -auto=Add{r}{r}{r} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=5 Mana -id=-12064 -auto=Add{r}{r}{r}{r} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=6 Mana -id=-12065 -auto=Add{r}{r}{r}{r}{r} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=7 Mana -id=-12066 -auto=Add{r}{r}{r}{r}{r}{r} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=8 Mana -id=-12067 -auto=Add{r}{r}{r}{r}{r}{r}{r} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=9 Mana -id=-12068 -auto=Add{r}{r}{r}{r}{r}{r}{r}{r} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=10 Mana -id=-12069 -auto=Add{r}{r}{r}{r}{r}{r}{r}{r}{r} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=11 Mana -id=-12070 -auto=Add{r}{r}{r}{r}{r}{r}{r}{r}{r}{r} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=White Mana Battery -auto={2}{t}:Counter(0/0,1,charge) -auto={t}:add{w} -auto={counter(0/0,-1,charge}{t}:token(-12071) && Add{w} -auto={counter(0/0,-2,charge}{t}:token(-12072) && Add{w} -auto={counter(0/0,-3,charge}{t}:token(-12073) && Add{w} -auto={counter(0/0,-4,charge}{t}:token(-12074) && Add{w} -auto={counter(0/0,-5,charge}{t}:token(-12075) && Add{w} -auto={counter(0/0,-6,charge}{t}:token(-12076) && Add{w} -auto={counter(0/0,-7,charge}{t}:token(-12077) && Add{w} -auto={counter(0/0,-8,charge}{t}:token(-12078) && Add{w} -auto={counter(0/0,-9,charge}{t}:token(-12079) && Add{w} -auto={counter(0/0,-10,charge}{t}:token(-12080) && Add{w} -text={2}, {T}: Put a charge counter on Black Mana Battery. {T}, Remove any number of charge counters from Blue Mana Battery: Add {U} to your mana pool, then add an additional {U} to your mana pool for each charge counter removed this way. -type=artifact -mana={4} -[/card] -[card] -name=2 Mana -id=-12071 -auto=add{w} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=3 Mana -id=-12072 -auto=Add{w}{w} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=4 Mana -id=-12073 -auto=Add{w}{w}{w} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=5 Mana -id=-12074 -auto=Add{w}{w}{w}{w} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=6 Mana -id=-12075 -auto=Add{w}{w}{w}{w}{w} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=7 Mana -id=-12076 -auto=Add{w}{w}{w}{w}{w}{w} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=8 Mana -id=-12077 -auto=Add{w}{w}{w}{w}{w}{w}{w} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=9 Mana -id=-12078 -auto=Add{w}{w}{w}{w}{w}{w}{w}{w} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=10 Mana -id=-12079 -auto=Add{w}{w}{w}{w}{w}{w}{w}{w}{w} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] -name=11 Mana -id=-12080 -auto=Add{w}{w}{w}{w}{w}{w}{w}{w}{w}{w} -auto=moveto(exile) all(this) -type=nothing -[/card] -[card] name=Coalition Relic auto={T}:Counter(0/0,1,charge) auto={T}:Add{R} @@ -6114,7 +5081,6 @@ auto=moveto(exile) all(this) type=nothing id=-12227 [/card] - [card] name=Magma Sliver auto=lord(sliver) {t}:foreach(sliver|battlefield) 1/0 target(creature[sliver]) ueot diff --git a/projects/mtg/include/AllAbilities.h b/projects/mtg/include/AllAbilities.h index c5a176f05..a6c301239 100644 --- a/projects/mtg/include/AllAbilities.h +++ b/projects/mtg/include/AllAbilities.h @@ -518,9 +518,7 @@ public: } const char * getMenuText(){ - string result = "Move to "; - result.append(destination); - return (result.c_str()); + return "Move"; } AAMover * clone() const{ @@ -567,12 +565,18 @@ public: return "Reanimate"; }else if (dest == g->players[i]->game->library){ return "Put in Library"; + }else if (dest == g->players[i]->game->inPlay){ + return "Put in Play"; }else if (dest == g->players[i]->game->graveyard && tc->targetsZone(g->players[i]->game->hand)){ return "Discard"; }else if (dest == g->players[i]->game->exile){ return "Exile"; }else if (tc->targetsZone(g->players[i]->game->library)){ return "Fetch"; + }else if (dest == g->players[i]->game->hand && tc->targetsZone(g->opponent()->game->hand)){ + return "Steal"; + }else if (dest == g->players[i]->game->graveyard && tc->targetsZone(g->opponent()->game->hand)){ + return "Opponent Discards"; } } } @@ -863,11 +867,40 @@ public: ~ATokenCreator(){ if (!isClone){ delete(multiplier); - } + } } }; - +//naming an ability line------------------------------------------------------------------------- +class ANamer:public ActivatedAbility{ +public: + string name; + ANamer(int _id,MTGCardInstance * _source,ManaCost * _cost, string sname, int _doTap):ActivatedAbility(_id,_source,_cost,0,_doTap){ + name = sname; + } + int resolve(){ + return 0; + } + const char * getMenuText(){ + sprintf(menuText, "%s",name.c_str()); + return menuText; + } + virtual ostream& toString(ostream& out) const + { + out << "ANamer ::: name" << name + << " ("; + return ActivatedAbility::toString(out) << ")"; + } + ANamer * clone() const{ + ANamer * a = NEW ANamer(*this); + a->isClone = 1; + return a; + } + ~ANamer(){ + if (!isClone){} + } +}; +//----------------------------------------------------------------------------------------------- class AADestroyer:public ActivatedAbility{ public: diff --git a/projects/mtg/include/GuiAvatars.h b/projects/mtg/include/GuiAvatars.h index 0a0a970e7..6798ee967 100644 --- a/projects/mtg/include/GuiAvatars.h +++ b/projects/mtg/include/GuiAvatars.h @@ -7,15 +7,17 @@ struct GuiAvatar; class GuiGraveyard; class GuiLibrary; - +class GuiOpponentHand; class GuiAvatars : public GuiLayer { protected: GuiAvatar* self, *opponent; GuiGraveyard* selfGraveyard, *opponentGraveyard; GuiLibrary* selfLibrary, *opponentLibrary; + GuiOpponentHand *opponentHand; CardSelector* cs; GuiAvatar* active; + public: GuiAvatars(CardSelector*); diff --git a/projects/mtg/include/GuiStatic.h b/projects/mtg/include/GuiStatic.h index 712e549f1..67f94dd55 100644 --- a/projects/mtg/include/GuiStatic.h +++ b/projects/mtg/include/GuiStatic.h @@ -50,7 +50,16 @@ struct GuiGameZone : public GuiStatic{ void toggleDisplay(); virtual ostream& toString(ostream& out) const; }; - +//opponenthand +class GuiOpponentHand: public GuiGameZone{ +public: + Player * player; + GuiOpponentHand(float _x, float _y, bool hasFocus, Player * player, GuiAvatars* Parent); + int receiveEventPlus(WEvent*); + int receiveEventMinus(WEvent*); + virtual ostream& toString(ostream& out) const; +}; +//end of my addition class GuiGraveyard: public GuiGameZone{ public: Player * player; diff --git a/projects/mtg/include/PlayGuiObject.h b/projects/mtg/include/PlayGuiObject.h index 50d7ff3b5..469d97f32 100644 --- a/projects/mtg/include/PlayGuiObject.h +++ b/projects/mtg/include/PlayGuiObject.h @@ -9,6 +9,7 @@ #define GUI_CARD 2 #define GUI_GRAVEYARD 3 #define GUI_LIBRARY 4 +#define GUI_OPPONENTHAND 5 #include #include "Effects.h" diff --git a/projects/mtg/src/GameObserver.cpp b/projects/mtg/src/GameObserver.cpp index c64223979..6e20a9aaf 100644 --- a/projects/mtg/src/GameObserver.cpp +++ b/projects/mtg/src/GameObserver.cpp @@ -279,7 +279,7 @@ void GameObserver::Update(float dt){ stateEffects(); oldGamePhase = currentGamePhase; } - + //applies damage to creatures after updates //Players life test void GameObserver::stateEffects() @@ -336,11 +336,22 @@ void GameObserver::ButtonPressed(PlayGuiObject * target){ if (_tc && _tc->targetsZone(library->zone)){ library->toggleDisplay(); library->zone->needShuffle = true; - } + } } } else if (GuiGraveyard* graveyard = dynamic_cast(target)) graveyard->toggleDisplay(); +//opponenthand + else if (GuiOpponentHand* opponentHand = dynamic_cast(target)) + if (opponentHand->showCards){ + opponentHand->toggleDisplay(); + } else { + TargetChooser * _tc = this->getCurrentTargetChooser(); + if (_tc && _tc->targetsZone(opponentHand->zone)){ + opponentHand->toggleDisplay(); + } + } +//end opponenthand else if (GuiAvatar* avatar = dynamic_cast(target)){ cardClick(NULL, avatar->player); } diff --git a/projects/mtg/src/GuiAvatars.cpp b/projects/mtg/src/GuiAvatars.cpp index 91e9f9b18..5594266a5 100644 --- a/projects/mtg/src/GuiAvatars.cpp +++ b/projects/mtg/src/GuiAvatars.cpp @@ -16,12 +16,15 @@ GuiAvatars::GuiAvatars(CardSelector* cs) : cs(cs), active(NULL) Add(opponent = NEW GuiAvatar (0, 0, false, GameObserver::GetInstance()->players[1], GuiAvatar::TOP_LEFT, this)); opponent->zoom = 0.9; + //opponenthandveiw button + Add(opponentHand = NEW GuiOpponentHand(-30 + GuiAvatar::Width * 1.2 - GuiGameZone::Width / 2, 35 + GuiGameZone::Height - 10, false, GameObserver::GetInstance()->players[1], this)); + //opponenthandveiwends Add(opponentGraveyard = NEW GuiGraveyard(5 + GuiAvatar::Width * 1.2 - GuiGameZone::Width / 2, 5, false, GameObserver::GetInstance()->players[1], this)); Add(opponentLibrary = NEW GuiLibrary (5 + GuiAvatar::Width *1.2 - GuiGameZone::Width / 2, 5 + GuiGameZone::Height + 5, false, GameObserver::GetInstance()->players[1], this)); cs->Add(self); cs->Add(selfGraveyard); cs->Add(selfLibrary); - cs->Add(opponent); cs->Add(opponentGraveyard); cs->Add(opponentLibrary); - selfGraveyard->alpha = selfLibrary->alpha = opponentGraveyard->alpha = opponentLibrary->alpha = 0; + cs->Add(opponent); cs->Add(opponentGraveyard); cs->Add(opponentLibrary); cs->Add(opponentHand); + selfGraveyard->alpha = selfLibrary->alpha = opponentGraveyard->alpha = opponentLibrary->alpha = opponentHand->alpha = 0; } float GuiAvatars::LeftBoundarySelf(){ @@ -37,8 +40,8 @@ void GuiAvatars::Activate(PlayGuiObject* c) c->zoom = 1.2; c->mHasFocus = true; - if ((opponentGraveyard == c) || (opponentLibrary == c) || (opponent == c)) - { opponentGraveyard->alpha = opponentLibrary->alpha = 128; active = opponent; opponent->zoom = 1.2;} + if ((opponentGraveyard == c) || (opponentLibrary == c) || (opponent == c)|| (opponentHand == c) ) + { opponentGraveyard->alpha = opponentLibrary->alpha = opponentHand->alpha = 128; active = opponent; opponent->zoom = 1.2;} else if ((selfGraveyard == c) || (selfLibrary == c) || (self == c)) { selfGraveyard->alpha = selfLibrary->alpha = 128; self->zoom = 1.0; active = self; } if (opponent != c && self != c) c->alpha = 255; @@ -47,22 +50,22 @@ void GuiAvatars::Deactivate(PlayGuiObject* c) { c->zoom = 1.0; c->mHasFocus = false; - if ((opponentGraveyard == c) || (opponentLibrary == c) || (opponent == c)) - { opponentGraveyard->alpha = opponentLibrary->alpha = 0; opponent->zoom = 0.9;} - else if ((selfGraveyard == c) || (selfLibrary == c) || (self == c)) - { selfGraveyard->alpha = selfLibrary->alpha = 0; self->zoom = 0.3; } - active = NULL; + if ((opponentGraveyard == c) || (opponentLibrary == c) || (opponentHand == c) || (opponent == c)) + { opponentGraveyard->alpha = opponentLibrary->alpha = opponentHand->alpha = 0; opponent->zoom = 0.9; active = NULL;} + else if ((selfGraveyard == c) || (selfLibrary == c) ||(self == c)) + { selfGraveyard->alpha = selfLibrary->alpha = 0; self->zoom = 0.3; active = NULL;} } int GuiAvatars::receiveEventPlus(WEvent* e) { - return selfGraveyard->receiveEventPlus(e) | opponentGraveyard->receiveEventPlus(e); + return selfGraveyard->receiveEventPlus(e) | opponentGraveyard->receiveEventPlus(e) | opponentHand->receiveEventPlus(e); } int GuiAvatars::receiveEventMinus(WEvent* e) { selfGraveyard->receiveEventMinus(e); opponentGraveyard->receiveEventMinus(e); + opponentHand->receiveEventMinus(e); return 1; } @@ -71,6 +74,7 @@ bool GuiAvatars::CheckUserInput(JButton key){ if (opponent->CheckUserInput(key)) return true; if (selfGraveyard->CheckUserInput(key)) return true; if (opponentGraveyard->CheckUserInput(key)) return true; + if (opponentHand->CheckUserInput(key)) return true; if (selfLibrary->CheckUserInput(key)) return true; if (opponentLibrary->CheckUserInput(key)) return true; return false; @@ -81,6 +85,7 @@ void GuiAvatars::Update(float dt) self->Update(dt); opponent->Update(dt); selfGraveyard->Update(dt); + opponentHand->Update(dt); opponentGraveyard->Update(dt); selfLibrary->Update(dt); opponentLibrary->Update(dt); @@ -89,8 +94,8 @@ void GuiAvatars::Update(float dt) void GuiAvatars::Render() { JRenderer * r = JRenderer::GetInstance(); - float w = 50; - float h = 60; + float w = 54; + float h = 54; if (opponent == active){ r->FillRect(opponent->actX, opponent->actY, w * opponent->actZ , h * opponent->actZ, ARGB(200,0,0,0)); }else if (self == active){ diff --git a/projects/mtg/src/GuiStatic.cpp b/projects/mtg/src/GuiStatic.cpp index bd24bbb6f..5251ee2d0 100644 --- a/projects/mtg/src/GuiStatic.cpp +++ b/projects/mtg/src/GuiStatic.cpp @@ -233,6 +233,49 @@ ostream& GuiGraveyard::toString(ostream& out) const return out << "GuiGraveyard :::"; } + +//opponenthand begins +GuiOpponentHand::GuiOpponentHand(float x, float y, bool hasFocus, Player * player, GuiAvatars* parent) : GuiGameZone(x, y, hasFocus, player->game->hand, parent), player(player) { + type = GUI_OPPONENTHAND; +} + +int GuiOpponentHand::receiveEventPlus(WEvent* e) +{ + if (WEventZoneChange* event = dynamic_cast(e)) + if (event->to == zone) + { + CardView* t; + if (event->card->view) + t = NEW CardView(CardSelector::nullZone, event->card, *(event->card->view)); + else + t = NEW CardView(CardSelector::nullZone, event->card, x, y); + t->x = x + Width / 2; t->y = y + Height / 2; t->zoom = 0.6; t->alpha = 0; + cards.push_back(t); + return 1; + } + return 0; +} + +int GuiOpponentHand::receiveEventMinus(WEvent* e) +{ + if (WEventZoneChange* event = dynamic_cast(e)) + if (event->from == zone) + for (vector::iterator it = cards.begin(); it != cards.end(); ++it) + if (event->card->previous == (*it)->card) + { + CardView* cv = *it; + cards.erase(it); + trash(cv); + return 1; + } + return 0; +} + +ostream& GuiOpponentHand::toString(ostream& out) const +{ + return out << "GuiOpponentHand :::"; +} + GuiLibrary::GuiLibrary(float x, float y, bool hasFocus, Player * player, GuiAvatars* parent) : GuiGameZone(x, y, hasFocus,player->game->library, parent), player(player) { type = GUI_LIBRARY; } diff --git a/projects/mtg/src/MTGAbility.cpp b/projects/mtg/src/MTGAbility.cpp index e3280f8d8..4eac3fb2d 100644 --- a/projects/mtg/src/MTGAbility.cpp +++ b/projects/mtg/src/MTGAbility.cpp @@ -648,6 +648,17 @@ MTGAbility * AbilityFactory::parseMagicLine(string s, int id, Spell * spell, MTG return tok; } + //name an ability line + found = s.find("name("); + if (found != string::npos){ + size_t end = s.find(")", found); + string sname = s.substr(found + 5,end - found - 5); + size_t previous = end+1; + ANamer * tok = NEW ANamer(id,card,NULL,sname,0); + return tok; + } + + //Equipment found = s.find("equip"); if (found != string::npos){