mirror of
https://github.com/magefree/mage.git
synced 2026-01-10 04:42:07 -08:00
Homarid Drake, reprints, and rewriting his or her to their
This commit is contained in:
parent
03355aee37
commit
00f91391e9
805 changed files with 1553 additions and 1474 deletions
|
|
@ -185,7 +185,7 @@ public class BloodMoonTest extends CardTestPlayerBase {
|
|||
addCard(Zone.HAND, playerB, "Pithing Needle"); // {1}
|
||||
addCard(Zone.HAND, playerB, "Ghost Quarter", 1);
|
||||
// {T}: Add {C} to your mana pool.
|
||||
// {T}, Sacrifice Ghost Quarter: Destroy target land. Its controller may search his or her library for a basic land card, put it onto the battlefield, then shuffle his or her library.
|
||||
// {T}, Sacrifice Ghost Quarter: Destroy target land. Its controller may search their library for a basic land card, put it onto the battlefield, then shuffle their library.
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Ghost Quarter", 1);
|
||||
|
||||
castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, "Blood Moon");
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@ public class NayaSoulbeastTest extends CardTestPlayerBase {
|
|||
|
||||
// Naya Soulbeast - {6}{G}{G}
|
||||
// Creature Beast - 0/0 - Trample
|
||||
// When you cast Naya Soulbeast, each player reveals the top card of his or her library.
|
||||
// When you cast Naya Soulbeast, each player reveals the top card of their library.
|
||||
// Naya Soulbeast enters the battlefield with X +1/+1 counters on it, where X is the total converted mana cost of all cards revealed this way.
|
||||
addCard(Zone.HAND, playerA, "Naya Soulbeast", 1);
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Forest", 8);
|
||||
|
|
|
|||
|
|
@ -49,9 +49,9 @@ public class WarpWorldTest extends CardTestPlayerBase {
|
|||
*/
|
||||
@Test
|
||||
public void testWarpWorld() {
|
||||
// Each player shuffles all permanents he or she owns into his or her library, then reveals that many cards from the top of his or her library.
|
||||
// Each player shuffles all permanents he or she owns into their library, then reveals that many cards from the top of their library.
|
||||
// Each player puts all artifact, creature, and land cards revealed this way onto the battlefield, then does the same for enchantment cards,
|
||||
// then puts all cards revealed this way that weren't put onto the battlefield on the bottom of his or her library.
|
||||
// then puts all cards revealed this way that weren't put onto the battlefield on the bottom of their library.
|
||||
addCard(Zone.HAND, playerA, "Warp World"); // Sorcery {5}{R}{R}{R}
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Mountain", 8);
|
||||
|
||||
|
|
|
|||
|
|
@ -210,7 +210,7 @@ public class CascadeTest extends CardTestPlayerBase {
|
|||
public void testWithSplitSpell() {
|
||||
|
||||
playerA.getLibrary().clear();
|
||||
// Breaking - Target player puts the top eight cards of his or her library into his or her graveyard.
|
||||
// Breaking - Target player puts the top eight cards of their library into their graveyard.
|
||||
// Entering - Put a creature card from a graveyard onto the battlefield under your control. It gains haste until end of turn.
|
||||
// Fuse (You may cast one or both halves of this card from your hand.)
|
||||
addCard(Zone.LIBRARY, playerA, "Breaking // Entering", 1); // Sorcery {U}{B} // {4}{U}{B}
|
||||
|
|
|
|||
|
|
@ -110,7 +110,7 @@ public class DiscardTest extends CardTestPlayerBase {
|
|||
addCard(Zone.BATTLEFIELD, playerA, "Swamp", 5);
|
||||
// Whenever an opponent discards a card, that player loses 2 life.
|
||||
addCard(Zone.HAND, playerA, "Liliana's Caress", 1); // ENCHANTMENT {1}{B}
|
||||
// Target opponent reveals his or her hand. You choose a card from it. That player discards that card.
|
||||
// Target opponent reveals their hand. You choose a card from it. That player discards that card.
|
||||
addCard(Zone.HAND, playerA, "Coercion", 1); // SORCERY {2}{B}
|
||||
|
||||
addCard(Zone.HAND, playerB, "Island", 2);
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@ public class DredgeTest extends CardTestPlayerBase {
|
|||
/**
|
||||
* 702.51. Dredge
|
||||
* 702.51a Dredge is a static ability that functions only while the card with dredge is in a player's graveyard. "Dredge N" means "As long as you have at least N cards in your library, if you would draw a card, you may instead put N cards from the top of your library into your graveyard and return this card from your graveyard to your hand."
|
||||
* 702.51b A player with fewer cards in his or her library than the number required by a dredge ability can't put any of them into his or her graveyard this way.
|
||||
* 702.51b A player with fewer cards in their library than the number required by a dredge ability can't put any of them into their graveyard this way.
|
||||
*/
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -70,7 +70,7 @@ public class EscalateTest extends CardTestPlayerBase {
|
|||
|
||||
// Escalate {1} (Pay this cost for each mode chosen beyond the first.)
|
||||
// Choose one or more —
|
||||
// * Target player discards all the cards in his or her hand, then draws that many cards.
|
||||
// * Target player discards all the cards in their hand, then draws that many cards.
|
||||
// * Collective Defiance deals 4 damage to target creature.
|
||||
// * Collective Defiance deals 3 damage to target opponent.
|
||||
addCard(Zone.HAND, playerA, "Collective Defiance"); // {1}{R}{R} sorcery
|
||||
|
|
@ -98,7 +98,7 @@ public class EscalateTest extends CardTestPlayerBase {
|
|||
|
||||
// Escalate {1} (Pay this cost for each mode chosen beyond the first.)
|
||||
// Choose one or more —
|
||||
// * Target player discards all the cards in his or her hand, then draws that many cards.
|
||||
// * Target player discards all the cards in their hand, then draws that many cards.
|
||||
// * Collective Defiance deals 4 damage to target creature.
|
||||
// * Collective Defiance deals 3 damage to target opponent.
|
||||
addCard(Zone.HAND, playerA, "Collective Defiance"); // {1}{R}{R} sorcery
|
||||
|
|
@ -129,7 +129,7 @@ public class EscalateTest extends CardTestPlayerBase {
|
|||
|
||||
// Escalate {1} (Pay this cost for each mode chosen beyond the first.)
|
||||
// Choose one or more —
|
||||
// * Target player discards all the cards in his or her hand, then draws that many cards.
|
||||
// * Target player discards all the cards in their hand, then draws that many cards.
|
||||
// * Collective Defiance deals 4 damage to target creature.
|
||||
// * Collective Defiance deals 3 damage to target opponent.
|
||||
addCard(Zone.HAND, playerA, "Collective Defiance"); // {1}{R}{R} sorcery
|
||||
|
|
|
|||
|
|
@ -50,7 +50,7 @@ public class EvokeTest extends CardTestPlayerBase {
|
|||
|
||||
Exhume {1}{B}
|
||||
Sorcery
|
||||
Each player puts a creature card from his or her graveyard onto the battlefield.
|
||||
Each player puts a creature card from their graveyard onto the battlefield.
|
||||
|
||||
*/
|
||||
|
||||
|
|
|
|||
|
|
@ -46,8 +46,8 @@ public class ForecastTest extends CardTestPlayerBase {
|
|||
*
|
||||
* 702.56b A forecast ability may be activated only during the upkeep step of
|
||||
* the card's owner and only once each turn. The controller of the forecast
|
||||
* ability reveals the card with that ability from his or her hand as the
|
||||
* ability is activated. That player plays with that card revealed in his or her
|
||||
* ability reveals the card with that ability from their hand as the
|
||||
* ability is activated. That player plays with that card revealed in their
|
||||
* hand until it leaves the player's hand or until a step or phase that isn't an
|
||||
* upkeep step begins, whichever comes first.
|
||||
*
|
||||
|
|
|
|||
|
|
@ -89,7 +89,7 @@ public class HideawayTest extends CardTestPlayerBase {
|
|||
addCard(Zone.HAND, playerA, "Mosswort Bridge");
|
||||
// When you cast Ulamog, the Ceaseless Hunger, exile two target permanents.
|
||||
// Indestructible
|
||||
// Whenever Ulamog attacks, defending player exiles the top twenty cards of his or her library.
|
||||
// Whenever Ulamog attacks, defending player exiles the top twenty cards of their library.
|
||||
addCard(Zone.LIBRARY, playerA, "Ulamog, the Ceaseless Hunger");
|
||||
skipInitShuffling();
|
||||
|
||||
|
|
|
|||
|
|
@ -74,7 +74,7 @@ public class LandfallTest extends CardTestPlayerBase {
|
|||
public void testHiveMind() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Plains", 2);
|
||||
|
||||
// Whenever a player casts an instant or sorcery spell, each other player copies that spell. Each of those players may choose new targets for his or her copy.
|
||||
// Whenever a player casts an instant or sorcery spell, each other player copies that spell. Each of those players may choose new targets for their copy.
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Hive Mind");
|
||||
|
||||
// Instant - {1}{W}
|
||||
|
|
@ -183,7 +183,7 @@ public class LandfallTest extends CardTestPlayerBase {
|
|||
21:10: arucki activates: Inkmoth Nexus [1b5] becomes a 1/1 Blinkmoth artifact creature with flying and infect until end of turn. It's still a land. (It deals damage to creatures in the form of -1/-1 counters and to players in the form of poison counters.). from Inkmoth Nexus [1b5]
|
||||
21:10: arucki casts Groundswell [b28] targeting Inkmoth Nexus [1b5]
|
||||
21:10: Ability triggers: Wild Defiance [990] - Whenever a creature you control becomes the target of an instant or sorcery spell, that creature gets +3/+3 until end of turn
|
||||
21:10: arucki puts Groundswell [b28] from stack into his or her graveyard
|
||||
21:10: arucki puts Groundswell [b28] from stack into their graveyard
|
||||
21:10: arucki attacks with 1 creature
|
||||
21:10: Attacker: Inkmoth Nexus 1b5 unblocked
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -45,10 +45,10 @@ public class MadnessTest extends CardTestPlayerBase {
|
|||
* with madness is in a player’s hand. The second is a triggered ability
|
||||
* that functions when the first ability is applied. “Madness [cost]” means
|
||||
* “If a player would discard this card, that player discards it, but may
|
||||
* exile it instead of putting it into his or her graveyard” and “When this
|
||||
* exile it instead of putting it into their graveyard” and “When this
|
||||
* card is exiled this way, its owner may cast it by paying [cost] rather
|
||||
* than paying its mana cost. If that player doesn’t, he or she puts this
|
||||
* card into his or her graveyard.” 702.34b Casting a spell using its
|
||||
* card into their graveyard.” 702.34b Casting a spell using its
|
||||
* madness ability follows the rules for paying alternative costs in rules
|
||||
* 601.2b and 601.2e–g.
|
||||
*
|
||||
|
|
|
|||
|
|
@ -111,7 +111,7 @@ public class ManifestTest extends CardTestPlayerBase {
|
|||
@Test
|
||||
public void testETBTriggeredAbilities3() {
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Island", 2);
|
||||
// Exile target creature. Its controller manifests the top card of his or her library {1}{U}
|
||||
// Exile target creature. Its controller manifests the top card of their library {1}{U}
|
||||
addCard(Zone.HAND, playerB, "Reality Shift");
|
||||
|
||||
// Constellation - When Doomwake Giant or another enchantment enters the battlefield
|
||||
|
|
@ -148,7 +148,7 @@ public class ManifestTest extends CardTestPlayerBase {
|
|||
@Test
|
||||
public void testNylea() {
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Island", 2);
|
||||
// Exile target creature. Its controller manifests the top card of his or her library {1}{U}
|
||||
// Exile target creature. Its controller manifests the top card of their library {1}{U}
|
||||
addCard(Zone.HAND, playerB, "Reality Shift");
|
||||
|
||||
// As long as your devotion to white is less than five, Nylea isn't a creature.
|
||||
|
|
@ -182,7 +182,7 @@ public class ManifestTest extends CardTestPlayerBase {
|
|||
@Test
|
||||
public void testColorOfManifestedCardDoesNotCount() {
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Island", 2);
|
||||
// Exile target creature. Its controller manifests the top card of his or her library {1}{U}
|
||||
// Exile target creature. Its controller manifests the top card of their library {1}{U}
|
||||
addCard(Zone.HAND, playerB, "Reality Shift");
|
||||
|
||||
// Gore Swine {2}{R}
|
||||
|
|
@ -219,7 +219,7 @@ public class ManifestTest extends CardTestPlayerBase {
|
|||
public void testCardGetsExiledFaceUp() {
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Island", 2);
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Swamp", 4);
|
||||
// Exile target creature. Its controller manifests the top card of his or her library {1}{U}
|
||||
// Exile target creature. Its controller manifests the top card of their library {1}{U}
|
||||
addCard(Zone.HAND, playerB, "Reality Shift");
|
||||
// Silence the Believers - Instant {2}{B}{B}
|
||||
// Strive — Silence the Believers costs more to cast for each target beyond the first.
|
||||
|
|
|
|||
|
|
@ -603,7 +603,7 @@ public class MorphTest extends CardTestPlayerBase {
|
|||
|
||||
// Flying, haste
|
||||
// Other creatures you control have haste.
|
||||
// Whenever an opponent casts a creature or planeswalker spell with the same name as a card in his or her graveyard, that player loses 10 life.
|
||||
// Whenever an opponent casts a creature or planeswalker spell with the same name as a card in their graveyard, that player loses 10 life.
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Dragonlord Kolaghan", 1);
|
||||
|
||||
castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, "Akroma, Angel of Fury");
|
||||
|
|
@ -751,7 +751,7 @@ public class MorphTest extends CardTestPlayerBase {
|
|||
public void testVesuvanShapeshifter() {
|
||||
|
||||
// Morph {5}{U}{U}
|
||||
// When Brine Elemental is turned face up, each opponent skips his or her next untap step.
|
||||
// When Brine Elemental is turned face up, each opponent skips their next untap step.
|
||||
addCard(Zone.HAND, playerA, "Brine Elemental"); // Creature {4}{U}{U} 5/4
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Island", 6);
|
||||
|
||||
|
|
@ -876,7 +876,7 @@ public class MorphTest extends CardTestPlayerBase {
|
|||
addCard(Zone.BATTLEFIELD, playerA, "Island", 3);
|
||||
|
||||
// Each creature has "When this creature dies, choose target opponent. That player puts this card from its owner's graveyard
|
||||
// onto the battlefield under his or her control at the beginning of the next end step."
|
||||
// onto the battlefield under their control at the beginning of the next end step."
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Endless Whispers", 1);
|
||||
|
||||
addCard(Zone.HAND, playerB, "Lightning Bolt");
|
||||
|
|
|
|||
|
|
@ -51,7 +51,7 @@ public class ParleyTest extends CardTestPlayerBase {
|
|||
addCard(Zone.BATTLEFIELD, playerA, "Forest");
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Plains", 2);
|
||||
|
||||
// Parley - {T}: Each player reveals the top card of his or her library. For each nonland card revealed this way, add {G} to your mana pool and you gain 1 life. Then each player draws a card.
|
||||
// Parley - {T}: Each player reveals the top card of their library. For each nonland card revealed this way, add {G} to your mana pool and you gain 1 life. Then each player draws a card.
|
||||
addCard(Zone.HAND, playerA, "Selvala, Explorer Returned");// Creature {1}{G}{W}
|
||||
|
||||
castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, "Selvala, Explorer Returned");
|
||||
|
|
@ -68,7 +68,7 @@ public class ParleyTest extends CardTestPlayerBase {
|
|||
addCard(Zone.BATTLEFIELD, playerA, "Forest");
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Plains", 2);
|
||||
|
||||
// Parley - {T}: Each player reveals the top card of his or her library. For each nonland card revealed this way, add {G} to your mana pool and you gain 1 life. Then each player draws a card.
|
||||
// Parley - {T}: Each player reveals the top card of their library. For each nonland card revealed this way, add {G} to your mana pool and you gain 1 life. Then each player draws a card.
|
||||
addCard(Zone.HAND, playerA, "Selvala, Explorer Returned");// Creature {1}{G}{W}
|
||||
|
||||
addCard(Zone.LIBRARY, playerA, "Silvercoat Lion", 2);
|
||||
|
|
|
|||
|
|
@ -54,7 +54,7 @@ public class ScavengeTest extends CardTestPlayerBase {
|
|||
addCard(Zone.BATTLEFIELD, playerA, "Silvercoat Lion", 1);
|
||||
|
||||
// Activated abilities of creature cards in your graveyard cost {1} less to activate.
|
||||
// Tap an untapped Zombie you control: Target player puts the top card of his or her library into his or her graveyard.
|
||||
// Tap an untapped Zombie you control: Target player puts the top card of their library into their graveyard.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Embalmer's Tools", 1);
|
||||
|
||||
activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "Scavenge", "Silvercoat Lion");
|
||||
|
|
@ -105,7 +105,7 @@ public class ScavengeTest extends CardTestPlayerBase {
|
|||
addCard(Zone.BATTLEFIELD, playerA, "Varolz, the Scar-Striped", 1);
|
||||
|
||||
// Activated abilities of creature cards in your graveyard cost {1} less to activate.
|
||||
// Tap an untapped Zombie you control: Target player puts the top card of his or her library into his or her graveyard.
|
||||
// Tap an untapped Zombie you control: Target player puts the top card of their library into their graveyard.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Embalmer's Tools", 1);
|
||||
|
||||
activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "Scavenge", "Silvercoat Lion");
|
||||
|
|
|
|||
|
|
@ -249,7 +249,7 @@ public class StormTest extends CardTestPlayerBase {
|
|||
addCard(Zone.BATTLEFIELD, playerA, "Swamp", 3);
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Island", 10);
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Mountain", 1);
|
||||
// Each player discards his or her hand,
|
||||
// Each player discards their hand,
|
||||
// then draws seven cards.
|
||||
addCard(Zone.HAND, playerA, "Wheel of Fortune", 1); // {2}{R}
|
||||
addCard(Zone.LIBRARY, playerA, "Mox Emerald", 1);
|
||||
|
|
|
|||
|
|
@ -193,7 +193,7 @@ public class TransformTest extends CardTestPlayerBase {
|
|||
*/
|
||||
@Test
|
||||
public void testStartledAwake() {
|
||||
// Target opponent puts the top thirteen cards of his or her library into his or her graveyard.
|
||||
// Target opponent puts the top thirteen cards of their library into their graveyard.
|
||||
// {3}{U}{U}: Put Startled Awake from your graveyard onto the battlefield transformed. Activate this ability only any time you could cast a sorcery.
|
||||
addCard(Zone.HAND, playerA, "Startled Awake"); // SORCERY {2}{U}{U}"
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Island", 9);
|
||||
|
|
|
|||
|
|
@ -97,7 +97,7 @@ public class TransmuteTest extends CardTestPlayerBase {
|
|||
public void searchSplittedCardThreeManaCmcSpell() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Island", 2);
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Swamp", 1);
|
||||
// Counter target spell unless its controller discards his or her hand.
|
||||
// Counter target spell unless its controller discards their hand.
|
||||
// Transmute {1}{U}{B}
|
||||
addCard(Zone.HAND, playerA, "Perplex"); // Instant {1}{U}{B}
|
||||
|
||||
|
|
|
|||
|
|
@ -45,9 +45,9 @@ public class CounterspellTest extends CardTestPlayerBase {
|
|||
Code: Select all
|
||||
13:10: Benno casts Boom [8ce] targeting Mountain [4c8] Island [80c]
|
||||
13:10: Benno casts Counterspell [2b7] targeting Boom [8ce]
|
||||
13:10: Benno puts Boom [8ce] from stack into his or her graveyard
|
||||
13:10: Benno puts Boom [8ce] from stack into their graveyard
|
||||
13:10: Boom is countered by Counterspell [2b7]
|
||||
13:10: Benno puts Counterspell [2b7] from stack into his or her graveyard
|
||||
13:10: Benno puts Counterspell [2b7] from stack into their graveyard
|
||||
13:10: Mountain [4c8] was destroyed
|
||||
13:10: Island [80c] was destroyed
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -86,7 +86,7 @@ public class CrypticCommandTest extends CardTestPlayerBase {
|
|||
*/
|
||||
@Test
|
||||
public void testCommandChangeTarget() {
|
||||
// Target player reveals his or her hand. You choose a nonland card from it. That player discards that card. You lose 2 life.
|
||||
// Target player reveals their hand. You choose a nonland card from it. That player discards that card. You lose 2 life.
|
||||
addCard(Zone.HAND, playerA, "Thoughtseize");
|
||||
// Counter target spell. If that spell is countered this way, put it into its owner's hand instead of into that player's graveyard.
|
||||
// Draw a card.
|
||||
|
|
|
|||
|
|
@ -49,7 +49,7 @@ public class DesertionTest extends CardTestPlayerBase {
|
|||
public void testCounterKozilek() {
|
||||
// When you cast Kozilek, Butcher of Truth, draw four cards.
|
||||
// Annihilator 4 (Whenever this creature attacks, defending player sacrifices four permanents.)
|
||||
// When Kozilek is put into a graveyard from anywhere, its owner shuffles his or her graveyard into his or her library.
|
||||
// When Kozilek is put into a graveyard from anywhere, its owner shuffles their graveyard into their library.
|
||||
addCard(Zone.HAND, playerA, "Kozilek, Butcher of Truth"); // {10}
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Island", 10);
|
||||
addCard(Zone.GRAVEYARD, playerA, "Silvercoat Lion"); // {10}
|
||||
|
|
|
|||
|
|
@ -46,7 +46,7 @@ public class NotOfThisWorldTest extends CardTestPlayerBase {
|
|||
*/
|
||||
@Test
|
||||
public void testCounterFirstSpell() {
|
||||
// At the beginning of each player's upkeep, destroy target nonartifact creature that player controls of his or her choice. It can't be regenerated.
|
||||
// At the beginning of each player's upkeep, destroy target nonartifact creature that player controls of their choice. It can't be regenerated.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "The Abyss", 1);
|
||||
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Island", 7);
|
||||
|
|
|
|||
|
|
@ -55,7 +55,7 @@ public class ResetTest extends CardTestPlayerBase {
|
|||
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Island", 2, true);
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Island", 2);
|
||||
// Cast Reset only during an opponent's turn after his or her upkeep step.
|
||||
// Cast Reset only during an opponent's turn after their upkeep step.
|
||||
// Untap all lands you control.
|
||||
addCard(Zone.HAND, playerB, "Reset");
|
||||
// Counter target spell.
|
||||
|
|
@ -85,7 +85,7 @@ public class ResetTest extends CardTestPlayerBase {
|
|||
public void testResetDoesNotWork() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Island", 2);
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Island", 2);
|
||||
// Cast Reset only during an opponent's turn after his or her upkeep step.
|
||||
// Cast Reset only during an opponent's turn after their upkeep step.
|
||||
// Untap all lands you control.
|
||||
addCard(Zone.HAND, playerA, "Reset");
|
||||
// Counter target spell.
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@ public class DestroyTheEvidanceTest extends CardTestPlayerBase {
|
|||
|
||||
// Destroy the Evidence - Sorcery {4}{B}
|
||||
// Destroy target land. Its controller reveals cards from the top of his
|
||||
// or her library until he or she reveals a land card, then puts those cards into his or her graveyard.
|
||||
// or her library until he or she reveals a land card, then puts those cards into their graveyard.
|
||||
|
||||
/**
|
||||
* The target land is destroyed
|
||||
|
|
|
|||
|
|
@ -47,7 +47,7 @@ public class OblivionSowerTest extends CardTestPlayerBase {
|
|||
@Test
|
||||
public void testPlayLandsFromExile() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Plains", 6);
|
||||
// When you cast Oblivion Sower, target opponent exiles the top four cards of his or her library, then you may put any number of land cards that player owns from exile onto the battlefield under your control.
|
||||
// When you cast Oblivion Sower, target opponent exiles the top four cards of their library, then you may put any number of land cards that player owns from exile onto the battlefield under your control.
|
||||
addCard(Zone.HAND, playerA, "Oblivion Sower"); // Creature - 5/8
|
||||
|
||||
// Canopy Vista enters the battlefield tapped unless you control two or more basic lands.
|
||||
|
|
|
|||
|
|
@ -26,7 +26,7 @@ public class SurgicalExtractionTest extends CardTestPlayerBase {
|
|||
public void testSearchAndExileSplitCards() {
|
||||
// Choose target card in a graveyard other than a basic land card. Search its owner's graveyard,
|
||||
// hand, and library for any number of cards with the same name as that card and exile them.
|
||||
// Then that player shuffles his or her library.
|
||||
// Then that player shuffles their library.
|
||||
addCard(Zone.HAND, playerA, "Surgical Extraction", 1); // Instant {B/P}
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Swamp", 2);
|
||||
|
||||
|
|
|
|||
|
|
@ -50,11 +50,11 @@ public class EndTurnEffectTest extends CardTestPlayerBase {
|
|||
public void testSpellsAffinity() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Island", 3);
|
||||
|
||||
// Whenever you draw a card, target opponent puts the top two cards of his or her library into his or her graveyard. If they're both nonland cards that share a color, repeat this process.
|
||||
// Whenever you draw a card, target opponent puts the top two cards of their library into their graveyard. If they're both nonland cards that share a color, repeat this process.
|
||||
// {5}{U}: Draw a card, then discard a card.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Sphinx's Tutelage");
|
||||
|
||||
// Each player shuffles his or her hand and graveyard into his or her library, then draws seven cards. If it's your turn, end the turn.
|
||||
// Each player shuffles their hand and graveyard into their library, then draws seven cards. If it's your turn, end the turn.
|
||||
// (Exile all spells and abilities on the stack, including this card.
|
||||
// Discard down to your maximum hand size. Damage wears off, and
|
||||
// "this turn" and "until end of turn" effects end.)
|
||||
|
|
|
|||
|
|
@ -46,7 +46,7 @@ public class CastAsInstantTest extends CardTestPlayerBase {
|
|||
// Draw a card.
|
||||
addCard(Zone.HAND, playerB, "Quicken"); // {U}
|
||||
// Devoid (This card has no color.)
|
||||
// Target opponent exiles two cards from his or her hand and loses 2 life.
|
||||
// Target opponent exiles two cards from their hand and loses 2 life.
|
||||
addCard(Zone.HAND, playerB, "Witness the End"); // {3}{B}
|
||||
|
||||
addCard(Zone.HAND, playerA, "Silvercoat Lion", 2);
|
||||
|
|
|
|||
|
|
@ -223,7 +223,7 @@ public class LandTypeChangingEffectsTest extends CardTestPlayerBase {
|
|||
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Mountain", 4);
|
||||
|
||||
// At the beginning of each player's upkeep, that player puts a flood counter on target non-Island land he or she controls of his or her choice.
|
||||
// At the beginning of each player's upkeep, that player puts a flood counter on target non-Island land he or she controls of their choice.
|
||||
// That land is an Island for as long as it has a flood counter on it.
|
||||
// At the beginning of each end step, if all lands on the battlefield are Islands, remove all flood counters from them.
|
||||
addCard(Zone.HAND, playerB, "Quicksilver Fountain", 1); // Artifact {3}
|
||||
|
|
|
|||
|
|
@ -46,7 +46,7 @@ public class PsychicIntrusionTest extends CardTestPlayerBase {
|
|||
public void testCastFromExile() {
|
||||
// Psychic Intrusion {3}{U}{B}
|
||||
// Sorcery
|
||||
// Target opponent reveals his or her hand. You choose a nonland card from that player's
|
||||
// Target opponent reveals their hand. You choose a nonland card from that player's
|
||||
// graveyard or hand and exile it. You may cast that card for as long as it remains exiled,
|
||||
// and you may spend mana as though it were mana of any color to cast that spell.
|
||||
addCard(Zone.HAND, playerA, "Psychic Intrusion", 1);
|
||||
|
|
|
|||
|
|
@ -46,7 +46,7 @@ public class BronzeBombshellTest extends CardTestPlayerBase {
|
|||
|
||||
// Each creature has "When this creature dies, choose target opponent.
|
||||
// That player puts this card from its owner's graveyard onto the battlefield
|
||||
// under his or her control at the beginning of the next end step."
|
||||
// under their control at the beginning of the next end step."
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Endless Whispers", 1);
|
||||
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Swamp", 3);
|
||||
|
|
|
|||
|
|
@ -58,7 +58,7 @@ public class CastOtherPlayersCardFromExileTest extends CardTestPlayerBase {
|
|||
public void testCastWithThadaAdelAcquisitor() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Swamp", 3);
|
||||
// Islandwalk
|
||||
// Whenever Thada Adel, Acquisitor deals combat damage to a player, search that player's library for an artifact card and exile it. Then that player shuffles his or her library.
|
||||
// Whenever Thada Adel, Acquisitor deals combat damage to a player, search that player's library for an artifact card and exile it. Then that player shuffles their library.
|
||||
// Until end of turn, you may play that card.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Thada Adel, Acquisitor", 1); // Creature {1}{U}{U} 2/2
|
||||
|
||||
|
|
@ -91,7 +91,7 @@ public class CastOtherPlayersCardFromExileTest extends CardTestPlayerBase {
|
|||
public void testCastWithThadaAdelAcquisitorReturnedFromBattlefield() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Swamp", 3);
|
||||
// Islandwalk
|
||||
// Whenever Thada Adel, Acquisitor deals combat damage to a player, search that player's library for an artifact card and exile it. Then that player shuffles his or her library.
|
||||
// Whenever Thada Adel, Acquisitor deals combat damage to a player, search that player's library for an artifact card and exile it. Then that player shuffles their library.
|
||||
// Until end of turn, you may play that card.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Thada Adel, Acquisitor", 1); // Creature {1}{U}{U} 2/2
|
||||
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ public class ExileAndReturnUnderYourControl extends CardTestPlayerBase {
|
|||
@Test
|
||||
public void testVillainousWealthExilesCourser() {
|
||||
// Villainous Wealth {X}{B}{G}{U}
|
||||
// Target opponent exiles the top X cards of his or her library. You may cast any number
|
||||
// Target opponent exiles the top X cards of their library. You may cast any number
|
||||
// of nonland cards with converted mana cost X or less from among them without paying
|
||||
// their mana costs.
|
||||
addCard(Zone.HAND, playerA, "Villainous Wealth");
|
||||
|
|
@ -72,7 +72,7 @@ public class ExileAndReturnUnderYourControl extends CardTestPlayerBase {
|
|||
@Test
|
||||
public void testVillainousWealthExilesBoost() {
|
||||
// Villainous Wealth {X}{B}{G}{U}
|
||||
// Target opponent exiles the top X cards of his or her library. You may cast any number
|
||||
// Target opponent exiles the top X cards of their library. You may cast any number
|
||||
// of nonland cards with converted mana cost X or less from among them without paying
|
||||
// their mana costs.
|
||||
addCard(Zone.HAND, playerA, "Villainous Wealth");
|
||||
|
|
@ -115,7 +115,7 @@ public class ExileAndReturnUnderYourControl extends CardTestPlayerBase {
|
|||
@Test
|
||||
public void testVillainousWealthExilesSylvanLibrary() {
|
||||
// Villainous Wealth {X}{B}{G}{U}
|
||||
// Target opponent exiles the top X cards of his or her library. You may cast any number
|
||||
// Target opponent exiles the top X cards of their library. You may cast any number
|
||||
// of nonland cards with converted mana cost X or less from among them without paying
|
||||
// their mana costs.
|
||||
addCard(Zone.HAND, playerA, "Villainous Wealth");
|
||||
|
|
@ -159,7 +159,7 @@ public class ExileAndReturnUnderYourControl extends CardTestPlayerBase {
|
|||
@Test
|
||||
public void testVillainousWealthAndQuicken() {
|
||||
// Villainous Wealth {X}{B}{G}{U}
|
||||
// Target opponent exiles the top X cards of his or her library. You may cast any number
|
||||
// Target opponent exiles the top X cards of their library. You may cast any number
|
||||
// of nonland cards with converted mana cost X or less from among them without paying
|
||||
// their mana costs.
|
||||
addCard(Zone.HAND, playerA, "Villainous Wealth"); // {X}{B}{G}{U}
|
||||
|
|
|
|||
|
|
@ -112,7 +112,7 @@ public class PutIntoPlayEffectsTest extends CardTestPlayerBase {
|
|||
addCard(Zone.BATTLEFIELD, playerA, "Island", 5);
|
||||
// Bribery - Sorcery {3}{U}{U}
|
||||
// Search target opponent's library for a creature card and put that card onto the battlefield
|
||||
// under your control. Then that player shuffles his or her library.
|
||||
// under your control. Then that player shuffles their library.
|
||||
addCard(Zone.HAND, playerA, "Bribery");
|
||||
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Island", 2);
|
||||
|
|
|
|||
|
|
@ -191,7 +191,7 @@ public class CleverImpersonatorTest extends CardTestPlayerBase {
|
|||
/*
|
||||
{3}{G} Dawn's Reflection
|
||||
Enchantment - Aura, Enchant Land
|
||||
Whenever enchanted land is tapped for mana, its controller adds two mana in any combination of colors to his or her mana pool (in addition to the mana the land produces).
|
||||
Whenever enchanted land is tapped for mana, its controller adds two mana in any combination of colors to their mana pool (in addition to the mana the land produces).
|
||||
*/
|
||||
addCard(Zone.HAND, playerA, dReflection);
|
||||
|
||||
|
|
|
|||
|
|
@ -170,7 +170,7 @@ public class CopySpellTest extends CardTestPlayerBase {
|
|||
* additional costs in rules 601.2b and 601.2e–g. 601.2b If the spell is
|
||||
* modal the player announces the mode choice (see rule 700.2). If the
|
||||
* player wishes to splice any cards onto the spell (see rule 702.46), he or
|
||||
* she reveals those cards in his or her hand. 706.10. To copy a spell,
|
||||
* she reveals those cards in their hand. 706.10. To copy a spell,
|
||||
* activated ability, or triggered ability means to put a copy of it onto
|
||||
* the stack; a copy of a spell isn’t cast and a copy of an activated
|
||||
* ability isn’t activated. A copy of a spell or ability copies both the
|
||||
|
|
|
|||
|
|
@ -47,7 +47,7 @@ public class EldraziMimicTest extends CardTestPlayerBase {
|
|||
public void testCopyIfPermanentIsGone() {
|
||||
// Devoid (This card has no color.)
|
||||
// Flying
|
||||
// Whenever you cast a colorless spell, target opponent exiles the top card of his or her library.
|
||||
// Whenever you cast a colorless spell, target opponent exiles the top card of their library.
|
||||
addCard(Zone.HAND, playerA, "Thought Harvester", 1); // {3}{U} 2/4
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Island", 4);
|
||||
// Whenever another colorless creature enters the battlefield under your control, you may have the base power and toughness of Eldrazi Mimic
|
||||
|
|
|
|||
|
|
@ -46,7 +46,7 @@ public class HiveMindTest extends CardTestPlayerBase {
|
|||
public void testTransform() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Mountain", 1);
|
||||
// Whenever a player casts an instant or sorcery spell, each other player copies that spell.
|
||||
// Each of those players may choose new targets for his or her copy.
|
||||
// Each of those players may choose new targets for their copy.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Hive Mind", 1);
|
||||
addCard(Zone.HAND, playerA, "Lightning Bolt", 1);
|
||||
setChoice(playerB, "Yes");
|
||||
|
|
@ -72,7 +72,7 @@ public class HiveMindTest extends CardTestPlayerBase {
|
|||
@Test
|
||||
public void testChaliceOfTtheVoid() {
|
||||
// Whenever a player casts an instant or sorcery spell, each other player copies that spell.
|
||||
// Each of those players may choose new targets for his or her copy.
|
||||
// Each of those players may choose new targets for their copy.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Hive Mind", 1);
|
||||
// Create a 4/4 red Giant creature token onto the battlefield.
|
||||
// At the beginning of your next upkeep, pay {4}{R}. If you don't, you lose the game.
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ public class LazavDimirMastermindTest extends CardTestPlayerBase {
|
|||
public void testCopySimpleCreature() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Lazav, Dimir Mastermind", 1);
|
||||
// Codex Shredder - Artifact
|
||||
// {T}: Target player puts the top card of his or her library into his or her graveyard.
|
||||
// {T}: Target player puts the top card of their library into their graveyard.
|
||||
// {5}, {T}, Sacrifice Codex Shredder: Return target card from your graveyard to your hand.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Codex Shredder", 1);
|
||||
|
||||
|
|
@ -40,7 +40,7 @@ public class LazavDimirMastermindTest extends CardTestPlayerBase {
|
|||
addCard(Zone.LIBRARY, playerB, "Assault Griffin",5);
|
||||
skipInitShuffling();
|
||||
|
||||
activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Target player puts the top card of his or her library into his or her graveyard.", playerB);
|
||||
activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Target player puts the top card of their library into their graveyard.", playerB);
|
||||
|
||||
setStopAt(1, PhaseStep.END_TURN);
|
||||
execute();
|
||||
|
|
@ -67,7 +67,7 @@ public class LazavDimirMastermindTest extends CardTestPlayerBase {
|
|||
addCard(Zone.LIBRARY, playerB, "Ogre Slumlord",5);
|
||||
skipInitShuffling();
|
||||
|
||||
activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Target player puts the top card of his or her library into his or her graveyard.", playerB);
|
||||
activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Target player puts the top card of their library into their graveyard.", playerB);
|
||||
|
||||
setStopAt(1, PhaseStep.END_TURN);
|
||||
execute();
|
||||
|
|
@ -89,7 +89,7 @@ public class LazavDimirMastermindTest extends CardTestPlayerBase {
|
|||
* Nightveil Specter
|
||||
* Creature — Specter 2/3, {U/B}{U/B}{U/B}
|
||||
* Flying
|
||||
* Whenever Nightveil Specter deals combat damage to a player, that player exiles the top card of his or her library.
|
||||
* Whenever Nightveil Specter deals combat damage to a player, that player exiles the top card of their library.
|
||||
* You may play cards exiled with Nightveil Specter.
|
||||
*
|
||||
*/
|
||||
|
|
@ -103,7 +103,7 @@ public class LazavDimirMastermindTest extends CardTestPlayerBase {
|
|||
addCard(Zone.LIBRARY, playerB, "Nightveil Specter",1);
|
||||
skipInitShuffling();
|
||||
|
||||
activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Target player puts the top card of his or her library into his or her graveyard.", playerB);
|
||||
activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Target player puts the top card of their library into their graveyard.", playerB);
|
||||
|
||||
attack(3, playerA, "Lazav, Dimir Mastermind");
|
||||
|
||||
|
|
@ -135,10 +135,10 @@ public class LazavDimirMastermindTest extends CardTestPlayerBase {
|
|||
skipInitShuffling();
|
||||
|
||||
// Lazav becomes a Nightveil Specter
|
||||
activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Target player puts the top card of his or her library into his or her graveyard.", playerB);
|
||||
activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Target player puts the top card of their library into their graveyard.", playerB);
|
||||
|
||||
// Lazav becomes a Silvercoat Lion
|
||||
activateAbility(3, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Target player puts the top card of his or her library into his or her graveyard.", playerB);
|
||||
activateAbility(3, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Target player puts the top card of their library into their graveyard.", playerB);
|
||||
|
||||
setStopAt(3, PhaseStep.END_TURN);
|
||||
execute();
|
||||
|
|
@ -161,7 +161,7 @@ public class LazavDimirMastermindTest extends CardTestPlayerBase {
|
|||
addCard(Zone.HAND, playerA ,"Reanimate");
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Lazav, Dimir Mastermind", 1);
|
||||
// Codex Shredder - Artifact
|
||||
// {T}: Target player puts the top card of his or her library into his or her graveyard.
|
||||
// {T}: Target player puts the top card of their library into their graveyard.
|
||||
// {5}, {T}, Sacrifice Codex Shredder: Return target card from your graveyard to your hand.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Codex Shredder", 1);
|
||||
|
||||
|
|
@ -173,7 +173,7 @@ public class LazavDimirMastermindTest extends CardTestPlayerBase {
|
|||
|
||||
skipInitShuffling();
|
||||
|
||||
activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Target player puts the top card of his or her library into his or her graveyard.", playerB);
|
||||
activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Target player puts the top card of their library into their graveyard.", playerB);
|
||||
|
||||
castSpell(1, PhaseStep.POSTCOMBAT_MAIN, playerB, "Tribute to Hunger");
|
||||
|
||||
|
|
@ -204,7 +204,7 @@ public class LazavDimirMastermindTest extends CardTestPlayerBase {
|
|||
public void testCopyCreatureExiled() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Lazav, Dimir Mastermind", 1);
|
||||
// Codex Shredder - Artifact
|
||||
// {T}: Target player puts the top card of his or her library into his or her graveyard.
|
||||
// {T}: Target player puts the top card of their library into their graveyard.
|
||||
// {5}, {T}, Sacrifice Codex Shredder: Return target card from your graveyard to your hand.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Codex Shredder", 1);
|
||||
|
||||
|
|
@ -216,7 +216,7 @@ public class LazavDimirMastermindTest extends CardTestPlayerBase {
|
|||
addCard(Zone.LIBRARY, playerB, "Assault Griffin",5);
|
||||
skipInitShuffling();
|
||||
|
||||
activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Target player puts the top card of his or her library into his or her graveyard.", playerB);
|
||||
activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Target player puts the top card of their library into their graveyard.", playerB);
|
||||
|
||||
castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, "Rest in Peace");
|
||||
|
||||
|
|
|
|||
|
|
@ -233,7 +233,7 @@ public class PhyrexianMetamorphTest extends CardTestPlayerBase {
|
|||
public void testShowAndTell() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Island", 3);
|
||||
|
||||
// Each player may put an artifact, creature, enchantment, or land card from his or her hand onto the battlefield.
|
||||
// Each player may put an artifact, creature, enchantment, or land card from their hand onto the battlefield.
|
||||
addCard(Zone.HAND, playerA, "Show and Tell"); // SORCERY {2}{U}
|
||||
|
||||
// Swampwalk
|
||||
|
|
|
|||
|
|
@ -43,7 +43,7 @@ public class ReversalOfFortuneTest extends CardTestPlayerBase {
|
|||
/**
|
||||
* Reversal of Fortune
|
||||
* Sorcery, 4RR (6)
|
||||
* Target opponent reveals his or her hand. You may copy an instant or sorcery
|
||||
* Target opponent reveals their hand. You may copy an instant or sorcery
|
||||
* card in it. If you do, you may cast the copy without paying its mana cost.
|
||||
*
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -56,7 +56,7 @@ public class VolrathsShapshifterTest extends CardTestPlayerBase {
|
|||
public void testLosingCopy() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Volrath's Shapeshifter", 1);
|
||||
// Codex Shredder - Artifact
|
||||
// {T}: Target player puts the top card of his or her library into his or her graveyard.
|
||||
// {T}: Target player puts the top card of their library into their graveyard.
|
||||
// {5}, {T}, Sacrifice Codex Shredder: Return target card from your graveyard to your hand.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Codex Shredder", 1);
|
||||
|
||||
|
|
@ -65,7 +65,7 @@ public class VolrathsShapshifterTest extends CardTestPlayerBase {
|
|||
addCard(Zone.LIBRARY, playerA, "Forest", 1);
|
||||
skipInitShuffling();
|
||||
|
||||
activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Target player puts the top card of his or her library into his or her graveyard.", playerA);
|
||||
activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Target player puts the top card of their library into their graveyard.", playerA);
|
||||
|
||||
setStopAt(1, PhaseStep.END_TURN);
|
||||
execute();
|
||||
|
|
|
|||
|
|
@ -335,7 +335,7 @@ public class CastFromHandWithoutPayingManaCostTest extends CardTestPlayerBase {
|
|||
Jeleva, Nephalia's Scourge {1}{U}{B}{R}
|
||||
Legendary Creature - Vampire Wizard 1/3
|
||||
Flying
|
||||
When Jeleva, Nephalia's Scourge enters the battlefield, each player exiles the top X cards of his or her library, where X is the amount of mana spent to cast Jeleva.
|
||||
When Jeleva, Nephalia's Scourge enters the battlefield, each player exiles the top X cards of their library, where X is the amount of mana spent to cast Jeleva.
|
||||
Whenever Jeleva attacks, you may cast an instant or sorcery card exiled with it without paying its mana cost.
|
||||
*/
|
||||
String jeleva = "Jeleva, Nephalia's Scourge";
|
||||
|
|
|
|||
|
|
@ -48,7 +48,7 @@ public class CastSplitCardsFromOtherZonesTest extends CardTestPlayerBase {
|
|||
@Test
|
||||
public void testCastTearFromOpponentsHand() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Mountain", 5);
|
||||
// When Mindclaw Shaman enters the battlefield, target opponent reveals his or her hand.
|
||||
// When Mindclaw Shaman enters the battlefield, target opponent reveals their hand.
|
||||
// You may cast an instant or sorcery card from it without paying its mana cost.
|
||||
addCard(Zone.HAND, playerA, "Mindclaw Shaman"); // Creature {4}{R}
|
||||
|
||||
|
|
@ -74,7 +74,7 @@ public class CastSplitCardsFromOtherZonesTest extends CardTestPlayerBase {
|
|||
@Test
|
||||
public void testCastFearFromOpponentsHand() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Mountain", 5);
|
||||
// When Mindclaw Shaman enters the battlefield, target opponent reveals his or her hand.
|
||||
// When Mindclaw Shaman enters the battlefield, target opponent reveals their hand.
|
||||
// You may cast an instant or sorcery card from it without paying its mana cost.
|
||||
addCard(Zone.HAND, playerA, "Mindclaw Shaman"); // Creature {4}{R}
|
||||
|
||||
|
|
@ -100,7 +100,7 @@ public class CastSplitCardsFromOtherZonesTest extends CardTestPlayerBase {
|
|||
@Test
|
||||
public void testCastFusedFromOpponentsHand() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Mountain", 5);
|
||||
// When Mindclaw Shaman enters the battlefield, target opponent reveals his or her hand.
|
||||
// When Mindclaw Shaman enters the battlefield, target opponent reveals their hand.
|
||||
// You may cast an instant or sorcery card from it without paying its mana cost.
|
||||
addCard(Zone.HAND, playerA, "Mindclaw Shaman"); // Creature {4}{R}
|
||||
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ public class SplitCardCmcTest extends CardTestPlayerBase {
|
|||
// Total CMC of Failure // Comply is 3, so should be exiled by Transgress the Mind.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Swamp", 2);
|
||||
// Devoid
|
||||
// Target player reveals his or her hand. You may choose a card from it with converted mana cost 3 or greater and exile that card.
|
||||
// Target player reveals their hand. You may choose a card from it with converted mana cost 3 or greater and exile that card.
|
||||
addCard(Zone.HAND, playerA, "Transgress the Mind");
|
||||
addCard(Zone.HAND, playerB, "Failure // Comply");
|
||||
|
||||
|
|
|
|||
|
|
@ -50,7 +50,7 @@ public class SewerNemesisTest extends CardTestPlayerBase {
|
|||
|
||||
// As Sewer Nemesis enters the battlefield, choose a player.
|
||||
// Sewer Nemesis's power and toughness are each equal to the number of cards in the chosen player's graveyard.
|
||||
// Whenever the chosen player casts a spell, that player puts the top card of his or her library into his or her graveyard.
|
||||
// Whenever the chosen player casts a spell, that player puts the top card of their library into their graveyard.
|
||||
addCard(Zone.HAND, playerA, "Sewer Nemesis");
|
||||
|
||||
addCard(Zone.GRAVEYARD, playerA, "Raging Goblin",4);
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@ public class AuraTargetRemovedTest extends CardTestPlayerBase {
|
|||
addCard(Zone.HAND, playerA, "Spreading Seas", 1); //Enchantment {1}{U}
|
||||
|
||||
// {T}: Add {C} to your mana pool.
|
||||
// {2}, {T}, Sacrifice Field of Ruin: Destroy target nonbasic land an opponent controls. Each player searches his or her library for a basic land card, puts it onto the battlefield, then shuffles his or her library.
|
||||
// {2}, {T}, Sacrifice Field of Ruin: Destroy target nonbasic land an opponent controls. Each player searches their library for a basic land card, puts it onto the battlefield, then shuffles their library.
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Field of Ruin", 1); //
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Island", 2);
|
||||
|
||||
|
|
|
|||
|
|
@ -41,8 +41,8 @@ public class OathOfLiegesTest extends CardTestPlayerBase {
|
|||
@Test
|
||||
public void testSearchLandOwner() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Plains", 2);
|
||||
// At the beginning of each player's upkeep, that player chooses target player who controls more lands than he or she does and is his or her opponent.
|
||||
// The first player may search his or her library for a basic land card, put that card onto the battlefield, then shuffle his or her library.
|
||||
// At the beginning of each player's upkeep, that player chooses target player who controls more lands than he or she does and is their opponent.
|
||||
// The first player may search their library for a basic land card, put that card onto the battlefield, then shuffle their library.
|
||||
addCard(Zone.HAND, playerA, "Oath of Lieges", 1); // {1}{W}
|
||||
addCard(Zone.LIBRARY, playerA, "Plains", 1);
|
||||
|
||||
|
|
@ -63,8 +63,8 @@ public class OathOfLiegesTest extends CardTestPlayerBase {
|
|||
@Test
|
||||
public void testSearchLandOpponent() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Plains", 2);
|
||||
// At the beginning of each player's upkeep, that player chooses target player who controls more lands than he or she does and is his or her opponent.
|
||||
// The first player may search his or her library for a basic land card, put that card onto the battlefield, then shuffle his or her library.
|
||||
// At the beginning of each player's upkeep, that player chooses target player who controls more lands than he or she does and is their opponent.
|
||||
// The first player may search their library for a basic land card, put that card onto the battlefield, then shuffle their library.
|
||||
addCard(Zone.HAND, playerA, "Oath of Lieges", 1); // {1}{W}
|
||||
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Plains", 1);
|
||||
|
|
@ -85,8 +85,8 @@ public class OathOfLiegesTest extends CardTestPlayerBase {
|
|||
@Test
|
||||
public void testSearchLandOwnerCopy() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Plains", 2);
|
||||
// At the beginning of each player's upkeep, that player chooses target player who controls more lands than he or she does and is his or her opponent.
|
||||
// The first player may search his or her library for a basic land card, put that card onto the battlefield, then shuffle his or her library.
|
||||
// At the beginning of each player's upkeep, that player chooses target player who controls more lands than he or she does and is their opponent.
|
||||
// The first player may search their library for a basic land card, put that card onto the battlefield, then shuffle their library.
|
||||
addCard(Zone.HAND, playerA, "Oath of Lieges", 1); // {1}{W}
|
||||
addCard(Zone.LIBRARY, playerA, "Plains", 3);
|
||||
addCard(Zone.HAND, playerA, "Plains", 1);
|
||||
|
|
|
|||
|
|
@ -44,7 +44,7 @@ public class SagesReverieTest extends CardTestPlayerBase {
|
|||
21:11: mbvash casts Crackling Doom [b78]
|
||||
21:11: MarioPineda loses 2 life
|
||||
21:11: MarioPineda sacrificed face down creature
|
||||
21:11: mbvash puts Crackling Doom [b78] from stack into his or her graveyard
|
||||
21:11: mbvash puts Crackling Doom [b78] from stack into their graveyard
|
||||
21:11: Cloudform [9cd] is put into graveyard from battlefield
|
||||
21:11: Sage's Reverie [26d] is put into graveyard from battlefield
|
||||
21:11: MarioPineda draws two cards
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@ public class EmptyOnlyOnTurnsEndManaTest extends CardTestPlayerBase {
|
|||
|
||||
@Test
|
||||
public void testDaxosOfMeletis() {
|
||||
// At the beginning of each player's upkeep, that player adds {G}{G}{G} to his or her mana pool. Until end of turn, this mana doesn't empty from that player's mana pool as steps and phases end.
|
||||
// At the beginning of each player's upkeep, that player adds {G}{G}{G} to their mana pool. Until end of turn, this mana doesn't empty from that player's mana pool as steps and phases end.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Shizuko, Caller of Autumn", 1);
|
||||
addCard(Zone.HAND, playerA, "Birds of Paradise", 1);
|
||||
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@ public class ManaFlareTest extends CardTestPlayerBase {
|
|||
|
||||
@Test
|
||||
public void testIsland() {
|
||||
// Whenever a player taps a land for mana, that player adds one mana to his or her mana pool of any type that land produced.
|
||||
// Whenever a player taps a land for mana, that player adds one mana to their mana pool of any type that land produced.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Mana Flare", 1);
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Island", 1);
|
||||
|
||||
|
|
|
|||
|
|
@ -43,7 +43,7 @@ public class JaceTest extends CardTestPlayerBase {
|
|||
public void TelepathUnboundSecondAbility() {
|
||||
// +1: Up to one target creature gets -2/-0 until your next turn.
|
||||
// -3: You may cast target instant or sorcery card from your graveyard this turn. If that card would be put into your graveyard this turn, exile it instead.
|
||||
// -9: You get an emblem with "Whenever you cast a spell, target opponent puts the top five cards of his or her library into his or her graveyard".
|
||||
// -9: You get an emblem with "Whenever you cast a spell, target opponent puts the top five cards of their library into their graveyard".
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Jace, Telepath Unbound"); // starts with 7 Loyality counters
|
||||
|
||||
// As an additional cost to cast Magmatic Insight, discard a land card.
|
||||
|
|
@ -143,7 +143,7 @@ public class JaceTest extends CardTestPlayerBase {
|
|||
public void testJaceUnravelerOfSecretsEmblem() {
|
||||
// +1: Scry 1, then draw a card.
|
||||
// -2: Return target creature to its owner's hand.
|
||||
// -8: You get an emblem with "Whenever an opponent casts his or her first spell each turn, counter that spell."
|
||||
// -8: You get an emblem with "Whenever an opponent casts their first spell each turn, counter that spell."
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Jace, Unraveler of Secrets", 1); // starts with 5 Loyality counters
|
||||
addCounters(1, PhaseStep.UPKEEP, playerA, "Jace, Unraveler of Secrets", CounterType.LOYALTY, 5);
|
||||
|
||||
|
|
|
|||
|
|
@ -48,7 +48,7 @@ public class ProtectionTest extends CardTestPlayerBase {
|
|||
// Emrakul, the Aeons Torn can't be countered.
|
||||
// When you cast Emrakul, take an extra turn after this one.
|
||||
// Flying, protection from colored spells, annihilator 6
|
||||
// When Emrakul is put into a graveyard from anywhere, its owner shuffles his or her graveyard into his or her library.
|
||||
// When Emrakul is put into a graveyard from anywhere, its owner shuffles their graveyard into their library.
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Emrakul, the Aeons Torn");
|
||||
|
||||
castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, "Murderous Cut", "Emrakul, the Aeons Torn");
|
||||
|
|
|
|||
|
|
@ -66,7 +66,7 @@ public class DrawEffectsTest extends CardTestPlayerBase {
|
|||
public void testNotionThief() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Island", 6);
|
||||
// Flash
|
||||
// If an opponent would draw a card except the first one he or she draws in each of his or her draw steps, instead that player skips that draw and you draw a card.
|
||||
// If an opponent would draw a card except the first one he or she draws in each of their draw steps, instead that player skips that draw and you draw a card.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Notion Thief", 1);
|
||||
|
||||
// Target player draws four cards.
|
||||
|
|
@ -92,9 +92,9 @@ public class DrawEffectsTest extends CardTestPlayerBase {
|
|||
skipInitShuffling();
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Mountain", 5);
|
||||
// Flash
|
||||
// If an opponent would draw a card except the first one he or she draws in each of his or her draw steps, instead that player skips that draw and you draw a card.
|
||||
// If an opponent would draw a card except the first one he or she draws in each of their draw steps, instead that player skips that draw and you draw a card.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Notion Thief", 1);
|
||||
// Each player discards his or her hand, then draws seven cards.
|
||||
// Each player discards their hand, then draws seven cards.
|
||||
// Miracle {1}{R}
|
||||
addCard(Zone.HAND, playerA, "Reforge the Soul", 1);
|
||||
|
||||
|
|
|
|||
|
|
@ -49,7 +49,7 @@ public class GrindstoneTest extends CardTestPlayerBase {
|
|||
// 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.
|
||||
addCard(Zone.HAND, playerA, "Painter's Servant");
|
||||
// {3}, {T}: Target player puts the top two cards of his or her library into his or her graveyard. If both cards share a color, repeat this process.
|
||||
// {3}, {T}: Target player puts the top two cards of their library into their graveyard. If both cards share a color, repeat this process.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Grindstone");
|
||||
|
||||
// Protection from everything
|
||||
|
|
@ -60,7 +60,7 @@ public class GrindstoneTest extends CardTestPlayerBase {
|
|||
castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, "Painter's Servant");
|
||||
setChoice(playerA, "Blue");
|
||||
|
||||
activateAbility(1, PhaseStep.POSTCOMBAT_MAIN, playerA, "{3}, {T}: Target player puts the top two cards of his or her library into his or her graveyard. If both cards share a color, repeat this process.");
|
||||
activateAbility(1, PhaseStep.POSTCOMBAT_MAIN, playerA, "{3}, {T}: Target player puts the top two cards of their library into their graveyard. If both cards share a color, repeat this process.");
|
||||
addTarget(playerA, playerB);
|
||||
|
||||
setStopAt(1, PhaseStep.END_TURN);
|
||||
|
|
@ -80,7 +80,7 @@ public class GrindstoneTest extends CardTestPlayerBase {
|
|||
// 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.
|
||||
addCard(Zone.HAND, playerA, "Painter's Servant");
|
||||
// {3}, {T}: Target player puts the top two cards of his or her library into his or her graveyard. If both cards share a color, repeat this process.
|
||||
// {3}, {T}: Target player puts the top two cards of their library into their graveyard. If both cards share a color, repeat this process.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Grindstone");
|
||||
|
||||
// Protection from everything
|
||||
|
|
@ -91,7 +91,7 @@ public class GrindstoneTest extends CardTestPlayerBase {
|
|||
castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, "Painter's Servant");
|
||||
setChoice(playerA, "Blue");
|
||||
|
||||
activateAbility(1, PhaseStep.POSTCOMBAT_MAIN, playerA, "{3}, {T}: Target player puts the top two cards of his or her library into his or her graveyard. If both cards share a color, repeat this process.");
|
||||
activateAbility(1, PhaseStep.POSTCOMBAT_MAIN, playerA, "{3}, {T}: Target player puts the top two cards of their library into their graveyard. If both cards share a color, repeat this process.");
|
||||
addTarget(playerA, playerB);
|
||||
|
||||
setStopAt(1, PhaseStep.END_TURN);
|
||||
|
|
@ -111,20 +111,20 @@ public class GrindstoneTest extends CardTestPlayerBase {
|
|||
// 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.
|
||||
addCard(Zone.HAND, playerA, "Painter's Servant");
|
||||
// {3}, {T}: Target player puts the top two cards of his or her library into his or her graveyard. If both cards share a color, repeat this process.
|
||||
// {3}, {T}: Target player puts the top two cards of their library into their graveyard. If both cards share a color, repeat this process.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Grindstone");
|
||||
|
||||
// When you cast Ulamog, the Infinite Gyre, destroy target permanent.
|
||||
// Annihilator 4 (Whenever this creature attacks, defending player sacrifices four permanents.)
|
||||
// Ulamog is indestructible.
|
||||
// When Ulamog is put into a graveyard from anywhere, its owner shuffles his or her graveyard into his or her library.
|
||||
// When Ulamog is put into a graveyard from anywhere, its owner shuffles their graveyard into their library.
|
||||
addCard(Zone.LIBRARY, playerB, "Ulamog, the Infinite Gyre", 2);
|
||||
skipInitShuffling();
|
||||
|
||||
castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, "Painter's Servant");
|
||||
setChoice(playerA, "Blue");
|
||||
|
||||
activateAbility(1, PhaseStep.POSTCOMBAT_MAIN, playerA, "{3}, {T}: Target player puts the top two cards of his or her library into his or her graveyard. If both cards share a color, repeat this process.");
|
||||
activateAbility(1, PhaseStep.POSTCOMBAT_MAIN, playerA, "{3}, {T}: Target player puts the top two cards of their library into their graveyard. If both cards share a color, repeat this process.");
|
||||
addTarget(playerA, playerB);
|
||||
|
||||
setStopAt(1, PhaseStep.END_TURN);
|
||||
|
|
|
|||
|
|
@ -56,7 +56,7 @@ public class LeylineOfTheVoidTest extends CardTestPlayerBase {
|
|||
// If a card would be put into an opponent's graveyard from anywhere, exile it instead.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Leyline of the Void");
|
||||
|
||||
// {X}, {T}: Target opponent puts cards from the top of his or her library into his or her graveyard until a creature card or X cards are put into that graveyard this way, whichever comes first. If a creature card is put into that graveyard this way, sacrifice Helm of Obedience and put that card onto the battlefield under your control. X can't be 0.
|
||||
// {X}, {T}: Target opponent puts cards from the top of their library into their graveyard until a creature card or X cards are put into that graveyard this way, whichever comes first. If a creature card is put into that graveyard this way, sacrifice Helm of Obedience and put that card onto the battlefield under your control. X can't be 0.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Helm of Obedience");
|
||||
|
||||
activateAbility(1, PhaseStep.POSTCOMBAT_MAIN, playerA, "{X}, {T}: Target opponent puts cards", playerB);
|
||||
|
|
@ -83,8 +83,8 @@ public class LeylineOfTheVoidTest extends CardTestPlayerBase {
|
|||
addCard(Zone.BATTLEFIELD, playerA, "Leyline of the Void");
|
||||
|
||||
// Exile Ill-Gotten Gains.
|
||||
// Each player discards his or her hand,
|
||||
// then returns up to three cards from his or her graveyard to his or her hand.
|
||||
// Each player discards their hand,
|
||||
// then returns up to three cards from their graveyard to their hand.
|
||||
addCard(Zone.HAND, playerA, "Ill-Gotten Gains"); // Sorcery - {2}{B}{B}
|
||||
addCard(Zone.HAND, playerA, "Silvercoat Lion", 4);
|
||||
addCard(Zone.HAND, playerB, "Silvercoat Lion", 4);
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@ public class SigardaHostOfHeronsTest extends CardTestPlayerBase {
|
|||
addCard(Zone.BATTLEFIELD, playerA, "Sigarda, Host of Herons");
|
||||
// {T}, Tap two untapped Humans you control: Exile target artifact or enchantment.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Devout Chaplain");
|
||||
// {2}{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.
|
||||
// {2}{B}, Sacrifice a creature: Target opponent reveals their hand. You choose a card from it. That player discards that card. Activate this ability only any time you could cast a sorcery.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Corpse Traders");
|
||||
// Target player sacrifices a creature.
|
||||
addCard(Zone.HAND, playerA, "Diabolic Edict");
|
||||
|
|
@ -94,7 +94,7 @@ public class SigardaHostOfHeronsTest extends CardTestPlayerBase {
|
|||
addCard(Zone.GRAVEYARD, playerB, "Merciless Executioner");
|
||||
|
||||
// Tempting offer — Return a creature card from your graveyard to the battlefield.
|
||||
// Each opponent may return a creature card from his or her graveyard to the battlefield.
|
||||
// Each opponent may return a creature card from their graveyard to the battlefield.
|
||||
// For each player who does, return a creature card from your graveyard to the battlefield.
|
||||
addCard(Zone.HAND, playerB, "Tempt with Immortality"); // sorcery {4}{B}
|
||||
|
||||
|
|
|
|||
|
|
@ -46,7 +46,7 @@ public class ZoneChangeReplacementTest extends CardTestPlayerBase {
|
|||
public void testFromLibraryZoneChange() {
|
||||
addCard(Zone.LIBRARY, playerA, "Darksteel Colossus");
|
||||
// Tome Scour - Sorcery - {U}
|
||||
// Target player puts the top five cards of his or her library into his or her graveyard.
|
||||
// Target player puts the top five cards of their library into their graveyard.
|
||||
addCard(Zone.HAND, playerA, "Tome Scour");
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Island", 1);
|
||||
skipInitShuffling();
|
||||
|
|
@ -65,7 +65,7 @@ public class ZoneChangeReplacementTest extends CardTestPlayerBase {
|
|||
public void testFromHandZoneChange() {
|
||||
addCard(Zone.HAND, playerA, "Progenitus");
|
||||
// Distress - Sorcery - {B}{B}
|
||||
// Target player reveals his or her hand. You choose a nonland card from it. That player discards that card.
|
||||
// Target player reveals their hand. You choose a nonland card from it. That player discards that card.
|
||||
addCard(Zone.HAND, playerA, "Distress");
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Swamp", 2);
|
||||
|
||||
|
|
|
|||
|
|
@ -243,7 +243,7 @@ public class CantCastTest extends CardTestPlayerBase {
|
|||
@Test
|
||||
public void testAlhammarret() {
|
||||
// Flying
|
||||
// As Alhammarret, High Arbiter enters the battlefield, each opponent reveals his or her hand. You choose the name of a nonland card revealed this way.
|
||||
// As Alhammarret, High Arbiter enters the battlefield, each opponent reveals their hand. You choose the name of a nonland card revealed this way.
|
||||
// Your opponents can't cast spells with the chosen name.
|
||||
addCard(Zone.HAND, playerA, "Alhammarret, High Arbiter", 4); // Creature - {5}{U}{U}
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Island", 7);
|
||||
|
|
|
|||
|
|
@ -22,8 +22,8 @@ public class DivergentTransformationsTest extends CardTestPlayerBase {
|
|||
Divergent Transformations {6}{R}
|
||||
Instant
|
||||
Undaunted (This spell costs 1 less to cast for each opponent.)
|
||||
Exile two target creatures. For each of those creatures, its controller reveals cards from the top of his or her library until he or she reveals a creature card,
|
||||
puts that card onto the battlefield, then shuffles the rest into his or her library.
|
||||
Exile two target creatures. For each of those creatures, its controller reveals cards from the top of their library until he or she reveals a creature card,
|
||||
puts that card onto the battlefield, then shuffles the rest into their library.
|
||||
*/
|
||||
String dTransformations = "Divergent Transformations";
|
||||
String memnite = "Memnite"; // {0} 1/1
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@ public class FiendOfTheShadowsTest extends CardTestPlayerBase {
|
|||
@Test
|
||||
public void testCard() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "White Knight");
|
||||
// Whenever Fiend of the Shadows deals combat damage to a player, that player exiles a card from his or her hand. You may play that card for as long as it remains exiled.
|
||||
// Whenever Fiend of the Shadows deals combat damage to a player, that player exiles a card from their hand. You may play that card for as long as it remains exiled.
|
||||
// Sacrifice a Human: Regenerate Fiend of the Shadows.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Fiend of the Shadows");
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Mountain");
|
||||
|
|
|
|||
|
|
@ -65,7 +65,7 @@ public class GrafdiggersCageTest extends CardTestPlayerBase {
|
|||
addCard(Zone.BATTLEFIELD, playerA, "Grafdigger's Cage");
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Silvercoat Lion", 2);
|
||||
|
||||
// Name a nonland card. Target player reveals his or her hand and discards all cards with that name.
|
||||
// Name a nonland card. Target player reveals their hand and discards all cards with that name.
|
||||
// Flashback-Sacrifice a creature. (You may cast this card from your graveyard for its flashback cost. Then exile it.)
|
||||
addCard(Zone.GRAVEYARD, playerA, "Cabal Therapy");
|
||||
|
||||
|
|
|
|||
|
|
@ -45,9 +45,9 @@ public class IncreasingCardsTest extends CardTestPlayerBase {
|
|||
}
|
||||
// Increasing Confusion {X}{U}
|
||||
// Sorcery
|
||||
// Target player puts the top X cards of his or her library into his or her graveyard.
|
||||
// Target player puts the top X cards of their library into their graveyard.
|
||||
// If Increasing Confusion was cast from a graveyard, that player puts twice that many
|
||||
// cards into his or her graveyard instead.
|
||||
// cards into their graveyard instead.
|
||||
@Test
|
||||
public void testIncreasingConfusion() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Island", 4);
|
||||
|
|
|
|||
|
|
@ -50,7 +50,7 @@ public class JacesMindseekerTest extends CardTestPlayerBase {
|
|||
public void testJacesMindseeker() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Island", 6);
|
||||
// Flying
|
||||
// When Jace's Mindseeker enters the battlefield, target opponent puts the top five cards of his or her library into his or her graveyard.
|
||||
// When Jace's Mindseeker enters the battlefield, target opponent puts the top five cards of their library into their graveyard.
|
||||
// You may cast an instant or sorcery card from among them without paying its mana cost.
|
||||
addCard(Zone.HAND, playerA, "Jace's Mindseeker", 1); // Creature 4/4 {4}{U}{U}
|
||||
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ public class NephaliaAcademyTest extends CardTestPlayerBase {
|
|||
@Test
|
||||
public void testReplacementEffectBySpell() {
|
||||
// Sorcery {B}
|
||||
// Target opponent reveals his or her hand. You choose a noncreature, nonland card from it. That player discards that card.
|
||||
// Target opponent reveals their hand. You choose a noncreature, nonland card from it. That player discards that card.
|
||||
addCard(Zone.HAND, playerA, "Duress", 1);
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Swamp", 1);
|
||||
|
||||
|
|
@ -39,7 +39,7 @@ public class NephaliaAcademyTest extends CardTestPlayerBase {
|
|||
@Test
|
||||
public void testDeclineReplacementEffectBySpell() {
|
||||
// Sorcery {B}
|
||||
// Target opponent reveals his or her hand. You choose a noncreature, nonland card from it. That player discards that card.
|
||||
// Target opponent reveals their hand. You choose a noncreature, nonland card from it. That player discards that card.
|
||||
addCard(Zone.HAND, playerA, "Duress", 1);
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Swamp", 1);
|
||||
|
||||
|
|
|
|||
|
|
@ -27,7 +27,7 @@ public class ThoughtKnotSeerTest extends CardTestPlayerBase {
|
|||
addCard(Zone.BATTLEFIELD, playerA, "Island", 2);
|
||||
|
||||
// {3}{<>} 4/4
|
||||
// When Thought-Knot Seer enters the battlefield, target opponent reveals his or her hand. You choose a nonland card from it and exile that card.
|
||||
// When Thought-Knot Seer enters the battlefield, target opponent reveals their hand. You choose a nonland card from it and exile that card.
|
||||
// When Thought-Knot Seer leaves the battlefield, target opponent draws a card.
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Thought-Knot Seer");
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Wastes", 4);
|
||||
|
|
@ -55,7 +55,7 @@ public class ThoughtKnotSeerTest extends CardTestPlayerBase {
|
|||
addCard(Zone.BATTLEFIELD, playerA, "Island", 2);
|
||||
|
||||
// {3}{<>} 4/4
|
||||
// When Thought-Knot Seer enters the battlefield, target opponent reveals his or her hand. You choose a nonland card from it and exile that card.
|
||||
// When Thought-Knot Seer enters the battlefield, target opponent reveals their hand. You choose a nonland card from it and exile that card.
|
||||
// When Thought-Knot Seer leaves the battlefield, target opponent draws a card.
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Thought-Knot Seer");
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Wastes", 4);
|
||||
|
|
@ -82,7 +82,7 @@ public class ThoughtKnotSeerTest extends CardTestPlayerBase {
|
|||
addCard(Zone.BATTLEFIELD, playerA, "Swamp", 2);
|
||||
|
||||
// {3}{<>} 4/4
|
||||
// When Thought-Knot Seer enters the battlefield, target opponent reveals his or her hand. You choose a nonland card from it and exile that card.
|
||||
// When Thought-Knot Seer enters the battlefield, target opponent reveals their hand. You choose a nonland card from it and exile that card.
|
||||
// When Thought-Knot Seer leaves the battlefield, target opponent draws a card.
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Thought-Knot Seer");
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Wastes", 4);
|
||||
|
|
@ -103,12 +103,12 @@ public class ThoughtKnotSeerTest extends CardTestPlayerBase {
|
|||
@Test
|
||||
public void testThoughtKnotSeerExiled() {
|
||||
|
||||
// {W} Exile target creature. Its controller may search his or her library for a basic land card, put that card onto the battlefield tapped, then shuffle his or her library.
|
||||
// {W} Exile target creature. Its controller may search their library for a basic land card, put that card onto the battlefield tapped, then shuffle their library.
|
||||
addCard(Zone.HAND, playerA, "Path to Exile");
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Plains", 1);
|
||||
|
||||
// {3}{<>} 4/4
|
||||
// When Thought-Knot Seer enters the battlefield, target opponent reveals his or her hand. You choose a nonland card from it and exile that card.
|
||||
// When Thought-Knot Seer enters the battlefield, target opponent reveals their hand. You choose a nonland card from it and exile that card.
|
||||
// When Thought-Knot Seer leaves the battlefield, target opponent draws a card.
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Thought-Knot Seer");
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Wastes", 4);
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@ import org.mage.test.serverside.base.CardTestPlayerBase;
|
|||
* opponent separates those cards into two piles. Put one pile into your hand
|
||||
* and the other on the bottom of your library in any order. -8: For each
|
||||
* player, search that player's library for a nonland card and exile it, then
|
||||
* that player shuffles his or her library. You may cast those cards without
|
||||
* that player shuffles their library. You may cast those cards without
|
||||
* paying their mana costs.
|
||||
*
|
||||
* @author LevelX2
|
||||
|
|
|
|||
|
|
@ -54,7 +54,7 @@ public class BorosReckonerTest extends CardTestPlayerBase {
|
|||
*/
|
||||
@Test
|
||||
public void testDamageAmountLikeDamageDealt() {
|
||||
// When Phytotitan dies, return it to the battlefield tapped under its owner's control at the beginning of his or her next upkeep.
|
||||
// When Phytotitan dies, return it to the battlefield tapped under its owner's control at the beginning of their next upkeep.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Phytotitan");
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Boros Reckoner");
|
||||
|
||||
|
|
|
|||
|
|
@ -49,7 +49,7 @@ public class DrawTriggeredTest extends CardTestPlayerBase {
|
|||
*/
|
||||
@Test
|
||||
public void DaysUndoingTriggeredDrewEventAreRemovedTest() {
|
||||
// Each player shuffles his or her hand and graveyard into his or her library, then draws seven cards. If it's your turn, end the turn.
|
||||
// Each player shuffles their hand and graveyard into their library, then draws seven cards. If it's your turn, end the turn.
|
||||
addCard(Zone.HAND, playerA, "Day's Undoing");
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Island", 3);
|
||||
|
||||
|
|
|
|||
|
|
@ -46,7 +46,7 @@ public class HeartbeatOfSpringTest extends CardTestPlayerBase {
|
|||
addCard(Zone.BATTLEFIELD, playerA, "Forest", 3);
|
||||
// {T}: Add {C} to your mana pool. If you control an Urza's Power-Plant and an Urza's Tower, add {C}{C} to your mana pool instead.
|
||||
addCard(Zone.HAND, playerA, "Urza's Mine", 1);
|
||||
// Whenever a player taps a land for mana, that player adds one mana to his or her mana pool of any type that land produced.
|
||||
// Whenever a player taps a land for mana, that player adds one mana to their mana pool of any type that land produced.
|
||||
addCard(Zone.HAND, playerA, "Heartbeat of Spring"); // {2}{G}
|
||||
// Whenever a player casts a white spell, you may gain 1 life.
|
||||
addCard(Zone.HAND, playerA, "Angel's Feather"); // {2}
|
||||
|
|
|
|||
|
|
@ -55,10 +55,10 @@ public class PossibilityStormTest extends CardTestPlayerBase {
|
|||
@Test
|
||||
public void TestWithZoeticCavern() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Swamp", 3);
|
||||
// Whenever a player casts a spell from his or her hand, that player exiles it, then exiles cards from
|
||||
// the top of his or her library until he or she exiles a card that shares a card type with it. That
|
||||
// Whenever a player casts a spell from their hand, that player exiles it, then exiles cards from
|
||||
// the top of their library until he or she exiles a card that shares a card type with it. That
|
||||
// player may cast that card without paying its mana cost. Then he or she puts all cards exiled with
|
||||
// Possibility Storm on the bottom of his or her library in a random order.
|
||||
// Possibility Storm on the bottom of their library in a random order.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Possibility Storm", 1);
|
||||
|
||||
// {T}: Add {C} to your mana pool.
|
||||
|
|
@ -99,10 +99,10 @@ public class PossibilityStormTest extends CardTestPlayerBase {
|
|||
public void TestWithCrypticCommand() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Island", 3);
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Mountain", 1);
|
||||
// Whenever a player casts a spell from his or her hand, that player exiles it, then exiles cards from
|
||||
// the top of his or her library until he or she exiles a card that shares a card type with it. That
|
||||
// Whenever a player casts a spell from their hand, that player exiles it, then exiles cards from
|
||||
// the top of their library until he or she exiles a card that shares a card type with it. That
|
||||
// player may cast that card without paying its mana cost. Then he or she puts all cards exiled with
|
||||
// Possibility Storm on the bottom of his or her library in a random order.
|
||||
// Possibility Storm on the bottom of their library in a random order.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Possibility Storm", 1);
|
||||
|
||||
// Choose one — Counter target noncreature spell unless its controller pays {2};
|
||||
|
|
|
|||
|
|
@ -97,7 +97,7 @@ public class ReturnToBattlefieldEffectsTest extends CardTestPlayerBase {
|
|||
addCard(Zone.BATTLEFIELD, playerB, "Mountain", 1);
|
||||
addCard(Zone.HAND, playerB, "Lightning Bolt", 1);
|
||||
|
||||
// {T}: Target player exiles a card from his or her graveyard.
|
||||
// {T}: Target player exiles a card from their graveyard.
|
||||
// {1}, Exile Relic of Progenitus: Exile all cards from all graveyards. Draw a card.
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Relic of Progenitus", 1);
|
||||
|
||||
|
|
|
|||
|
|
@ -53,7 +53,7 @@ public class ReturnToHandEffectsTest extends CardTestPlayerBase {
|
|||
// Whenever a creature is put into your graveyard from the battlefield, return it to your hand.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Enduring Renewal");
|
||||
|
||||
// {T}, Sacrifice an artifact: Target player puts the top three cards of his or her library into his or her graveyard.
|
||||
// {T}, Sacrifice an artifact: Target player puts the top three cards of their library into their graveyard.
|
||||
// Whenever an artifact enters the battlefield, you may untap Grinding Station.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Grinding Station", 1);
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Ornithopter", 1);
|
||||
|
|
|
|||
|
|
@ -156,7 +156,7 @@ public class SacredGroundTest extends CardTestPlayerBase {
|
|||
addCard(Zone.HAND, playerA, "Molten Rain");// Instant {1}{R}{R}
|
||||
// Choose target card in a graveyard other than a basic land card. Search its owner's graveyard,
|
||||
// hand, and library for any number of cards with the same name as that card and exile them.
|
||||
// Then that player shuffles his or her library.
|
||||
// Then that player shuffles their library.
|
||||
addCard(Zone.HAND, playerA, "Surgical Extraction"); // Instant {B/P}
|
||||
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Caves of Koilos", 1);
|
||||
|
|
|
|||
|
|
@ -42,7 +42,7 @@ public class ShuffleTriggeredTest extends CardTestPlayerBase {
|
|||
public void testWidespreadPanicDoesTrigger() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Forest", 5);
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Mountain", 1);
|
||||
// Whenever a spell or ability causes its controller to shuffle his or her library, that player puts a card from his or her hand on top of his or her library.
|
||||
// Whenever a spell or ability causes its controller to shuffle their library, that player puts a card from their hand on top of their library.
|
||||
addCard(Zone.HAND, playerA, "Widespread Panic", 1); // Enchantment {2}{R}
|
||||
// Search your library for a basic land card and put that card onto the battlefield. Then shuffle your library.
|
||||
addCard(Zone.HAND, playerA, "Untamed Wilds"); // Sorcery - {2}{G}
|
||||
|
|
@ -72,10 +72,10 @@ public class ShuffleTriggeredTest extends CardTestPlayerBase {
|
|||
public void testWidespreadPanicDoesNotTriggerIfOpponentShufflesPlayersLibrary() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Island", 9);
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Mountain", 1);
|
||||
// Whenever a spell or ability causes its controller to shuffle his or her library, that player puts a card from his or her hand on top of his or her library.
|
||||
// Whenever a spell or ability causes its controller to shuffle their library, that player puts a card from their hand on top of their library.
|
||||
addCard(Zone.HAND, playerA, "Widespread Panic", 1); // Enchantment {2}{R}
|
||||
// Prowl {3}{U}
|
||||
// Search target opponent's library for an instant or sorcery card. You may cast that card without paying its mana cost. Then that player shuffles his or her library.
|
||||
// Search target opponent's library for an instant or sorcery card. You may cast that card without paying its mana cost. Then that player shuffles their library.
|
||||
addCard(Zone.HAND, playerA, "Knowledge Exploitation"); // Sorcery - {5}{U}{U}
|
||||
|
||||
addCard(Zone.HAND, playerB, "Silvercoat Lion");
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ public class StormCauldronTest extends CardTestPlayerBase {
|
|||
// {T}, Sacrifice Crystal Vein: Add {C}{C} to your mana pool.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Crystal Vein", 1);
|
||||
|
||||
// Each player may play an additional land during each of his or her turns.
|
||||
// Each player may play an additional land during each of their turns.
|
||||
// Whenever a land is tapped for mana, return it to its owner's hand.
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Storm Cauldron", 1);
|
||||
|
||||
|
|
|
|||
|
|
@ -73,7 +73,7 @@ public class UlamogTheInfiniteGyreTest extends CardTestPlayerBase {
|
|||
addCard(Zone.BATTLEFIELD, playerA, "Swamp", 15);
|
||||
// When you cast Kozilek, Butcher of Truth, draw four cards.
|
||||
// Annihilator 4 (Whenever this creature attacks, defending player sacrifices four permanents.)
|
||||
// When Kozilek is put into a graveyard from anywhere, its owner shuffles his or her graveyard into his or her library.
|
||||
// When Kozilek is put into a graveyard from anywhere, its owner shuffles their graveyard into their library.
|
||||
addCard(Zone.HAND, playerA, "Kozilek, Butcher of Truth"); // {10}
|
||||
// Destroy target creature.
|
||||
// Spell mastery - If there are two or more instant and/or sorcery cards in your graveyard, you gain 2 life.
|
||||
|
|
@ -122,7 +122,7 @@ public class UlamogTheInfiniteGyreTest extends CardTestPlayerBase {
|
|||
addCard(Zone.BATTLEFIELD, playerA, "Island", 5);
|
||||
// When you cast Kozilek, Butcher of Truth, draw four cards.
|
||||
// Annihilator 4 (Whenever this creature attacks, defending player sacrifices four permanents.)
|
||||
// When Kozilek is put into a graveyard from anywhere, its owner shuffles his or her graveyard into his or her library.
|
||||
// When Kozilek is put into a graveyard from anywhere, its owner shuffles their graveyard into their library.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Kozilek, Butcher of Truth"); // {10}
|
||||
// As Ixidron enters the battlefield, turn all other nontoken creatures face down.
|
||||
// Ixidron's power and toughness are each equal to the number of face-down creatures on the battlefield.
|
||||
|
|
|
|||
|
|
@ -64,7 +64,7 @@ public class BrainMaggotTest extends CardTestPlayerBase {
|
|||
@Test
|
||||
public void testCardFromHandWillBeExiledAndReturn() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Swamp", 2);
|
||||
// When Brain Maggot enters the battlefield, target opponent reveals his or her hand and you choose a nonland card from it. Exile that card until Brain Maggot leaves the battlefield.
|
||||
// When Brain Maggot enters the battlefield, target opponent reveals their hand and you choose a nonland card from it. Exile that card until Brain Maggot leaves the battlefield.
|
||||
addCard(Zone.HAND, playerA, "Brain Maggot", 2);
|
||||
|
||||
addCard(Zone.HAND, playerB, "Bloodflow Connoisseur", 1);
|
||||
|
|
|
|||
|
|
@ -54,7 +54,7 @@ public class FlagstonesOfTrokairTest extends CardTestPlayerBase {
|
|||
addCard(Zone.BATTLEFIELD, playerA, "Flagstones of Trokair", 1);
|
||||
addCard(Zone.LIBRARY, playerA, "Plains", 5);
|
||||
// {T}: Add {C} to your mana pool.
|
||||
// {T}, Sacrifice Ghost Quarter: Destroy target land. Its controller may search his or her library for a basic land card, put it onto the battlefield, then shuffle his or her library.
|
||||
// {T}, Sacrifice Ghost Quarter: Destroy target land. Its controller may search their library for a basic land card, put it onto the battlefield, then shuffle their library.
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Ghost Quarter", 1);
|
||||
|
||||
castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, "Spreading Seas", "Flagstones of Trokair");
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ import org.mage.test.serverside.base.CardTestPlayerBase;
|
|||
*
|
||||
* @author noxx
|
||||
*
|
||||
* When Rotcrown Ghoul dies, target player puts the top five cards of his or her library into his or her graveyard.
|
||||
* When Rotcrown Ghoul dies, target player puts the top five cards of their library into their graveyard.
|
||||
*/
|
||||
public class RotcrownGhoulTest extends CardTestPlayerBase {
|
||||
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ import org.mage.test.serverside.base.CardTestPlayerBase;
|
|||
*
|
||||
* @author noxx
|
||||
*
|
||||
* Whenever Selhoff Occultist or another creature dies, target player puts the top card of his or her library into his or her graveyard.
|
||||
* Whenever Selhoff Occultist or another creature dies, target player puts the top card of their library into their graveyard.
|
||||
*/
|
||||
public class SelhoffOccultistTest extends CardTestPlayerBase {
|
||||
|
||||
|
|
|
|||
|
|
@ -49,7 +49,7 @@ public class TidehollowScullerTest extends CardTestPlayerBase {
|
|||
addCard(Zone.BATTLEFIELD, playerA, "Island", 2);
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Plains", 3);
|
||||
// Tidehollow Sculler {W}{B}
|
||||
// When Tidehollow Sculler enters the battlefield, target opponent reveals his or her hand and you choose a nonland card from it. Exile that card.
|
||||
// When Tidehollow Sculler enters the battlefield, target opponent reveals their hand and you choose a nonland card from it. Exile that card.
|
||||
// When Tidehollow Sculler leaves the battlefield, return the exiled card to its owner's hand.
|
||||
addCard(Zone.HAND, playerA, "Tidehollow Sculler", 1);
|
||||
// Boomerang {U}{U}
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ public class TunnelIgnusTest extends CardTestPlayerBase {
|
|||
* Tunnel Ignus
|
||||
* Creature — Elemental 2/1, 1R (2)
|
||||
* Whenever a land enters the battlefield under an opponent's control, if
|
||||
* that player had another land enter the battlefield under his or her
|
||||
* that player had another land enter the battlefield under their
|
||||
* control this turn, Tunnel Ignus deals 3 damage to that player.
|
||||
*
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -437,7 +437,7 @@ public class AttackBlockRestrictionsTest extends CardTestPlayerBase {
|
|||
/* Underworld Cerberus {3}{B}{3} 6/6
|
||||
* Underworld Cerberus can't be blocked except by three or more creatures.
|
||||
* Cards in graveyards can't be the targets of spells or abilities.
|
||||
* When Underworld Cerberus dies, exile it and each player returns all creature cards from his or her graveyard to his or her hand.
|
||||
* When Underworld Cerberus dies, exile it and each player returns all creature cards from their graveyard to their hand.
|
||||
*/
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Underworld Cerberus");
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Memnite"); // 1/1
|
||||
|
|
@ -461,7 +461,7 @@ public class AttackBlockRestrictionsTest extends CardTestPlayerBase {
|
|||
/* Underworld Cerberus {3}{B}{3} 6/6
|
||||
* Underworld Cerberus can't be blocked except by three or more creatures.
|
||||
* Cards in graveyards can't be the targets of spells or abilities.
|
||||
* When Underworld Cerberus dies, exile it and each player returns all creature cards from his or her graveyard to his or her hand.
|
||||
* When Underworld Cerberus dies, exile it and each player returns all creature cards from their graveyard to their hand.
|
||||
*/
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Underworld Cerberus");
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Memnite", 2); // 1/1
|
||||
|
|
@ -486,7 +486,7 @@ public class AttackBlockRestrictionsTest extends CardTestPlayerBase {
|
|||
/* Underworld Cerberus {3}{B}{3} 6/6
|
||||
* Underworld Cerberus can't be blocked except by three or more creatures.
|
||||
* Cards in graveyards can't be the targets of spells or abilities.
|
||||
* When Underworld Cerberus dies, exile it and each player returns all creature cards from his or her graveyard to his or her hand.
|
||||
* When Underworld Cerberus dies, exile it and each player returns all creature cards from their graveyard to their hand.
|
||||
*/
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Underworld Cerberus");
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Memnite", 3); // 1/1
|
||||
|
|
@ -515,7 +515,7 @@ public class AttackBlockRestrictionsTest extends CardTestPlayerBase {
|
|||
/* Underworld Cerberus {3}{B}{3} 6/6
|
||||
* Underworld Cerberus can't be blocked except by three or more creatures.
|
||||
* Cards in graveyards can't be the targets of spells or abilities.
|
||||
* When Underworld Cerberus dies, exile it and each player returns all creature cards from his or her graveyard to his or her hand.
|
||||
* When Underworld Cerberus dies, exile it and each player returns all creature cards from their graveyard to their hand.
|
||||
*/
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Underworld Cerberus");
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Memnite", 10); // 1/1
|
||||
|
|
|
|||
|
|
@ -79,7 +79,7 @@ public class CastBRGCommanderTest extends CardTestCommanderDuelBase {
|
|||
*/
|
||||
@Test
|
||||
public void castCommanderAfterKarnUltimate() {
|
||||
// +4: Target player exiles a card from his or her hand.
|
||||
// +4: Target player exiles a card from their hand.
|
||||
// -3: Exile target permanent.
|
||||
// -14: Restart the game, leaving in exile all non-Aura permanent cards exiled with Karn Liberated. Then put those cards onto the battlefield under your control.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Karn Liberated", 1);
|
||||
|
|
|
|||
|
|
@ -44,7 +44,7 @@ public class PhageTheUntouchableTest extends CardTestPlayerBase {
|
|||
public void TestWithEndlessWhispers() {
|
||||
// Each creature has "When this creature dies, choose target opponent.
|
||||
// That player puts this card from its owner's graveyard onto the battlefield
|
||||
// under his or her control at the beginning of the next end step."
|
||||
// under their control at the beginning of the next end step."
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Endless Whispers");
|
||||
|
||||
// Destroy target creature or planeswalker..
|
||||
|
|
|
|||
|
|
@ -92,7 +92,7 @@ public class BloodchiefAscensionTest extends CardTestMultiPlayerBase {
|
|||
* Bloodchief Ascension at my end step. I think he should, even though I had
|
||||
* left the game from dying, because of:
|
||||
*
|
||||
* 800.4g. If a player leaves the game during his or her turn, that turn
|
||||
* 800.4g. If a player leaves the game during their turn, that turn
|
||||
* continues to its completion without an active player. If the active
|
||||
* player would receive priority, instead the next player in turn order
|
||||
* receives priority, or the top object on the stack resolves, or the phase
|
||||
|
|
@ -163,7 +163,7 @@ public class BloodchiefAscensionTest extends CardTestMultiPlayerBase {
|
|||
addCard(Zone.BATTLEFIELD, playerD, "Bloodchief Ascension");
|
||||
addCounters(2, PhaseStep.UPKEEP, playerD, "Bloodchief Ascension", CounterType.QUEST, 3);
|
||||
addCard(Zone.BATTLEFIELD, playerD, "Island", 1);
|
||||
// {U}, {T}: Each player discards his or her hand, then draws cards equal to the greatest number of cards a player discarded this way.
|
||||
// {U}, {T}: Each player discards their hand, then draws cards equal to the greatest number of cards a player discarded this way.
|
||||
addCard(Zone.BATTLEFIELD, playerD, "Jace's Archivist", 1); // {1}{U}{U}
|
||||
addCard(Zone.LIBRARY, playerD, "Demolish");
|
||||
addCard(Zone.HAND, playerD, "Demolish", 1);
|
||||
|
|
|
|||
|
|
@ -167,7 +167,7 @@ public class PlayerLeftGameRange1Test extends CardTestMultiPlayerBase {
|
|||
public void TestOtherPlayerPlaneswalkerCreatedEmblem() {
|
||||
// +1: Scry 1, then draw a card.
|
||||
// -2: Return target creature to its owner's hand.
|
||||
// -8: You get an emblem with "Whenever an opponent casts his or her first spell each turn, counter that spell."
|
||||
// -8: You get an emblem with "Whenever an opponent casts their first spell each turn, counter that spell."
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Jace, Unraveler of Secrets");
|
||||
addCounters(1, PhaseStep.DRAW, playerB, "Jace, Unraveler of Secrets", CounterType.LOYALTY, 8);
|
||||
|
||||
|
|
@ -319,8 +319,8 @@ public class PlayerLeftGameRange1Test extends CardTestMultiPlayerBase {
|
|||
|
||||
addCard(Zone.BATTLEFIELD, playerD, "Island", 3);
|
||||
// {2}{U}, {T}: Put target creature on the bottom of its owner's library. That creature's controller reveals cards from the
|
||||
// top of his or her library until he or she reveals a creature card. The player puts that card onto the battlefield and the
|
||||
// rest on the bottom of his or her library in any order. Activate this ability only any time you could cast a sorcery.
|
||||
// top of their library until he or she reveals a creature card. The player puts that card onto the battlefield and the
|
||||
// rest on the bottom of their library in any order. Activate this ability only any time you could cast a sorcery.
|
||||
addCard(Zone.BATTLEFIELD, playerD, "Proteus Staff", 1);
|
||||
|
||||
addCard(Zone.BATTLEFIELD, playerD, "Eager Cadet", 1);
|
||||
|
|
|
|||
|
|
@ -166,7 +166,7 @@ public class PlayerLeftGameRangeAllTest extends CardTestMultiPlayerBase {
|
|||
public void TestOtherPlayerPlaneswalkerCreatedEmblem() {
|
||||
// +1: Scry 1, then draw a card.
|
||||
// -2: Return target creature to its owner's hand.
|
||||
// -8: You get an emblem with "Whenever an opponent casts his or her first spell each turn, counter that spell."
|
||||
// -8: You get an emblem with "Whenever an opponent casts their first spell each turn, counter that spell."
|
||||
addCard(Zone.BATTLEFIELD, playerC, "Jace, Unraveler of Secrets");
|
||||
addCounters(1, PhaseStep.DRAW, playerC, "Jace, Unraveler of Secrets", CounterType.LOYALTY, 8);
|
||||
|
||||
|
|
|
|||
|
|
@ -244,7 +244,7 @@ public class TestPlayerExpectedErrorsTest extends CardTestPlayerBase {
|
|||
/* Underworld Cerberus {3}{B}{3} 6/6
|
||||
* Underworld Cerberus can't be blocked except by three or more creatures.
|
||||
* Cards in graveyards can't be the targets of spells or abilities.
|
||||
* When Underworld Cerberus dies, exile it and each player returns all creature cards from his or her graveyard to his or her hand.
|
||||
* When Underworld Cerberus dies, exile it and each player returns all creature cards from their graveyard to their hand.
|
||||
*/
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Underworld Cerberus");
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Memnite", 2); // 1/1
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue