reinstated new mill wording

This commit is contained in:
Evan Kranzler 2020-06-10 22:38:59 -04:00
parent 0dddfe3989
commit 36b31d097e
3 changed files with 18 additions and 19 deletions

View file

@ -28,7 +28,7 @@ public class LazavDimirMastermindTest extends CardTestPlayerBase {
public void testCopySimpleCreature() { public void testCopySimpleCreature() {
addCard(Zone.BATTLEFIELD, playerA, "Lazav, Dimir Mastermind", 1); addCard(Zone.BATTLEFIELD, playerA, "Lazav, Dimir Mastermind", 1);
// Codex Shredder - Artifact // Codex Shredder - Artifact
// {T}: Target player puts the top card of their library into their graveyard. // {T}: Target player mills a card.
// {5}, {T}, Sacrifice Codex Shredder: Return target card from your graveyard to your hand. // {5}, {T}, Sacrifice Codex Shredder: Return target card from your graveyard to your hand.
addCard(Zone.BATTLEFIELD, playerA, "Codex Shredder", 1); addCard(Zone.BATTLEFIELD, playerA, "Codex Shredder", 1);
@ -36,11 +36,10 @@ public class LazavDimirMastermindTest extends CardTestPlayerBase {
addCard(Zone.LIBRARY, playerB, "Assault Griffin", 5); addCard(Zone.LIBRARY, playerB, "Assault Griffin", 5);
skipInitShuffling(); skipInitShuffling();
activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Target player puts the top card", playerB); activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Target player mills a card.", playerB);
setStopAt(1, PhaseStep.END_TURN); setStopAt(1, PhaseStep.END_TURN);
execute(); execute();
assertAllCommandsUsed();
assertPermanentCount(playerA, "Lazav, Dimir Mastermind", 1); assertPermanentCount(playerA, "Lazav, Dimir Mastermind", 1);
assertPowerToughness(playerA, "Lazav, Dimir Mastermind", 3, 2); assertPowerToughness(playerA, "Lazav, Dimir Mastermind", 3, 2);
@ -64,7 +63,7 @@ public class LazavDimirMastermindTest extends CardTestPlayerBase {
addCard(Zone.LIBRARY, playerB, "Ogre Slumlord", 5); addCard(Zone.LIBRARY, playerB, "Ogre Slumlord", 5);
skipInitShuffling(); skipInitShuffling();
activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Target player puts the top card", playerB); activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Target player mills a card.", playerB);
setStopAt(1, PhaseStep.END_TURN); setStopAt(1, PhaseStep.END_TURN);
execute(); execute();
@ -98,7 +97,7 @@ public class LazavDimirMastermindTest extends CardTestPlayerBase {
addCard(Zone.LIBRARY, playerB, "Nightveil Specter", 1); addCard(Zone.LIBRARY, playerB, "Nightveil Specter", 1);
skipInitShuffling(); skipInitShuffling();
activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Target player puts the top card", playerB); activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Target player mills a card.", playerB);
attack(3, playerA, "Lazav, Dimir Mastermind"); attack(3, playerA, "Lazav, Dimir Mastermind");
@ -130,10 +129,10 @@ public class LazavDimirMastermindTest extends CardTestPlayerBase {
skipInitShuffling(); skipInitShuffling();
// Lazav becomes a Nightveil Specter // Lazav becomes a Nightveil Specter
activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Target player puts the top card", playerB); activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Target player mills a card.", playerB);
// Lazav becomes a Silvercoat Lion // Lazav becomes a Silvercoat Lion
activateAbility(3, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Target player puts the top card", playerB); activateAbility(3, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Target player mills a card.", playerB);
setStopAt(3, PhaseStep.END_TURN); setStopAt(3, PhaseStep.END_TURN);
execute(); execute();
@ -157,7 +156,7 @@ public class LazavDimirMastermindTest extends CardTestPlayerBase {
addCard(Zone.HAND, playerA, "Reanimate"); addCard(Zone.HAND, playerA, "Reanimate");
addCard(Zone.BATTLEFIELD, playerA, "Lazav, Dimir Mastermind", 1); addCard(Zone.BATTLEFIELD, playerA, "Lazav, Dimir Mastermind", 1);
// Codex Shredder - Artifact // Codex Shredder - Artifact
// {T}: Target player puts the top card of their library into their graveyard. // {T}: Target player mills a card.
// {5}, {T}, Sacrifice Codex Shredder: Return target card from your graveyard to your hand. // {5}, {T}, Sacrifice Codex Shredder: Return target card from your graveyard to your hand.
addCard(Zone.BATTLEFIELD, playerA, "Codex Shredder", 1); addCard(Zone.BATTLEFIELD, playerA, "Codex Shredder", 1);
@ -169,7 +168,7 @@ public class LazavDimirMastermindTest extends CardTestPlayerBase {
skipInitShuffling(); skipInitShuffling();
activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Target player puts the top card", playerB); activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Target player mills a card.", playerB);
castSpell(1, PhaseStep.POSTCOMBAT_MAIN, playerB, "Tribute to Hunger"); castSpell(1, PhaseStep.POSTCOMBAT_MAIN, playerB, "Tribute to Hunger");
@ -190,6 +189,7 @@ public class LazavDimirMastermindTest extends CardTestPlayerBase {
Assert.assertFalse(lazav.getSubtype(currentGame).contains(SubType.GRIFFIN)); // no Griffin type Assert.assertFalse(lazav.getSubtype(currentGame).contains(SubType.GRIFFIN)); // no Griffin type
Assert.assertFalse("Lazav, Dimir Mastermind must have flying", lazav.getAbilities().contains(FlyingAbility.getInstance())); Assert.assertFalse("Lazav, Dimir Mastermind must have flying", lazav.getAbilities().contains(FlyingAbility.getInstance()));
} }
/** /**
@ -199,7 +199,7 @@ public class LazavDimirMastermindTest extends CardTestPlayerBase {
public void testCopyCreatureExiled() { public void testCopyCreatureExiled() {
addCard(Zone.BATTLEFIELD, playerA, "Lazav, Dimir Mastermind", 1); addCard(Zone.BATTLEFIELD, playerA, "Lazav, Dimir Mastermind", 1);
// Codex Shredder - Artifact // Codex Shredder - Artifact
// {T}: Target player puts the top card of their library into their graveyard. // {T}: Target player mills a card.
// {5}, {T}, Sacrifice Codex Shredder: Return target card from your graveyard to your hand. // {5}, {T}, Sacrifice Codex Shredder: Return target card from your graveyard to your hand.
addCard(Zone.BATTLEFIELD, playerA, "Codex Shredder", 1); addCard(Zone.BATTLEFIELD, playerA, "Codex Shredder", 1);
@ -211,7 +211,7 @@ public class LazavDimirMastermindTest extends CardTestPlayerBase {
addCard(Zone.LIBRARY, playerB, "Assault Griffin", 5); addCard(Zone.LIBRARY, playerB, "Assault Griffin", 5);
skipInitShuffling(); skipInitShuffling();
activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Target player puts the top card", playerB); activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Target player mills a card.", playerB);
castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, "Rest in Peace"); castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, "Rest in Peace");

View file

@ -15,12 +15,11 @@ import org.mage.test.serverside.base.CardTestPlayerBase;
/** /**
* Volrath's Shapeshifter * Volrath's Shapeshifter
* * <p>
* As long as the top card of your graveyard is a creature card, Volrath's * As long as the top card of your graveyard is a creature card, Volrath's
* Shapeshifter has the full text of that card and has the text "2: Discard a * Shapeshifter has the full text of that card and has the text "2: Discard a
* card." (Volrath's Shapeshifter has that card's name, mana cost, color, types, * card." (Volrath's Shapeshifter has that card's name, mana cost, color, types,
* abilities, power, and toughness.) * abilities, power, and toughness.)
*
*/ */
public class VolrathsShapshifterTest extends CardTestPlayerBase { public class VolrathsShapshifterTest extends CardTestPlayerBase {
@ -58,7 +57,7 @@ public class VolrathsShapshifterTest extends CardTestPlayerBase {
public void testLosingCopy() { public void testLosingCopy() {
addCard(Zone.BATTLEFIELD, playerA, "Volrath's Shapeshifter", 1); addCard(Zone.BATTLEFIELD, playerA, "Volrath's Shapeshifter", 1);
// Codex Shredder - Artifact // Codex Shredder - Artifact
// {T}: {T}: Target player puts the top card of their library into their graveyard. // {T}: Target player mills a card.
// {5}, {T}, Sacrifice Codex Shredder: Return target card from your graveyard to your hand. // {5}, {T}, Sacrifice Codex Shredder: Return target card from your graveyard to your hand.
addCard(Zone.BATTLEFIELD, playerA, "Codex Shredder", 1); addCard(Zone.BATTLEFIELD, playerA, "Codex Shredder", 1);
@ -67,7 +66,7 @@ public class VolrathsShapshifterTest extends CardTestPlayerBase {
addCard(Zone.LIBRARY, playerA, "Forest", 1); addCard(Zone.LIBRARY, playerA, "Forest", 1);
skipInitShuffling(); skipInitShuffling();
activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Target player puts the top card of their library into their graveyard.", playerA); activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Target player mills a card.", playerA);
setStopAt(1, PhaseStep.END_TURN); setStopAt(1, PhaseStep.END_TURN);
setStrictChooseMode(true); setStrictChooseMode(true);

View file

@ -64,16 +64,16 @@ public class PutLibraryIntoGraveTargetEffect extends OneShotEffect {
} else { } else {
sb.append("that target"); sb.append("that target");
} }
sb.append(" puts the top ");
sb.append(" mills ");
if (message.isEmpty()) { if (message.isEmpty()) {
if (amount.toString().equals("1")) { if (amount.toString().equals("1")) {
sb.append("card"); sb.append("a card");
} else { } else {
sb.append(CardUtil.numberToText(amount.toString())).append(" cards"); sb.append(CardUtil.numberToText(amount.toString())).append(" cards");
} }
sb.append(" of their library into their graveyard");
} else { } else {
sb.append(" X cards, where X is the number of "); sb.append("X cards, where X is the number of ");
} }
if (!message.isEmpty()) { if (!message.isEmpty()) {