diff --git a/Mage.Sets/src/mage/cards/d/Dracoplasm.java b/Mage.Sets/src/mage/cards/d/Dracoplasm.java index 472827af344..a00e3178934 100644 --- a/Mage.Sets/src/mage/cards/d/Dracoplasm.java +++ b/Mage.Sets/src/mage/cards/d/Dracoplasm.java @@ -118,6 +118,7 @@ class DracoplasmEffect extends ReplacementEffectImpl { } ContinuousEffect effect = new SetBasePowerToughnessSourceEffect(power, toughness, Duration.WhileOnBattlefield); game.addEffect(effect, source); + this.discard(); // prevent multiple replacements e.g. on blink return false; } } diff --git a/Mage.Sets/src/mage/cards/m/MinionOfTheWastes.java b/Mage.Sets/src/mage/cards/m/MinionOfTheWastes.java index db1bb56c139..d0d0188faca 100644 --- a/Mage.Sets/src/mage/cards/m/MinionOfTheWastes.java +++ b/Mage.Sets/src/mage/cards/m/MinionOfTheWastes.java @@ -99,6 +99,7 @@ class MinionOfTheWastesEffect extends ReplacementEffectImpl { payAmount, payAmount, Duration.WhileOnBattlefield ), source); creature.addInfo("life paid", CardUtil.addToolTipMarkTags("Life paid: " + payAmount), game); + this.discard(); // prevent multiple replacements e.g. on blink return false; } } diff --git a/Mage.Sets/src/mage/cards/n/NamelessRace.java b/Mage.Sets/src/mage/cards/n/NamelessRace.java index 082a06b0516..8f92effeaf1 100644 --- a/Mage.Sets/src/mage/cards/n/NamelessRace.java +++ b/Mage.Sets/src/mage/cards/n/NamelessRace.java @@ -123,6 +123,7 @@ class NamelessRaceEffect extends ReplacementEffectImpl { payAmount, payAmount, Duration.WhileOnBattlefield ), source); creature.addInfo("life paid", CardUtil.addToolTipMarkTags("Life paid: " + payAmount), game); + this.discard(); // prevent multiple replacements e.g. on blink return false; } } diff --git a/Mage.Sets/src/mage/cards/w/WoodElemental.java b/Mage.Sets/src/mage/cards/w/WoodElemental.java index 4f2b29a430c..c415084aea7 100644 --- a/Mage.Sets/src/mage/cards/w/WoodElemental.java +++ b/Mage.Sets/src/mage/cards/w/WoodElemental.java @@ -107,6 +107,7 @@ class WoodElementalEffect extends ReplacementEffectImpl { } } game.addEffect(new SetBasePowerToughnessSourceEffect(value, value, Duration.WhileOnBattlefield), source); + this.discard(); // prevent multiple replacements e.g. on blink return false; } } diff --git a/Mage.Tests/src/test/java/org/mage/test/cards/single/tmp/MinionOfTheWastesTest.java b/Mage.Tests/src/test/java/org/mage/test/cards/single/tmp/MinionOfTheWastesTest.java index 2d7e79a20f8..a75c1a76184 100644 --- a/Mage.Tests/src/test/java/org/mage/test/cards/single/tmp/MinionOfTheWastesTest.java +++ b/Mage.Tests/src/test/java/org/mage/test/cards/single/tmp/MinionOfTheWastesTest.java @@ -32,4 +32,26 @@ public class MinionOfTheWastesTest extends CardTestPlayerBase { assertPowerToughness(playerA, minion, 3, 3); } + @Test + public void testFlicker() { + addCard(Zone.BATTLEFIELD, playerA, "Scrubland", 7); + addCard(Zone.HAND, playerA, minion); + addCard(Zone.HAND, playerA, "Cloudshift"); // flicker + + castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, minion); + setChoice(playerA, "X=3"); + + castSpell(1, PhaseStep.POSTCOMBAT_MAIN, playerA, "Cloudshift", minion); + setChoice(playerA, "X=2"); + + setStrictChooseMode(true); + setStopAt(2, PhaseStep.END_TURN); + execute(); + + assertLife(playerA, 15); + assertPowerToughness(playerA, minion, 2, 2); + } + + // Note similar cards: Wood Elemental, Nameless Race, Dracoplasm + }