fix Minion of the Wastes multiple replacement (related to f252525c)

This commit is contained in:
xenohedron 2025-03-16 00:16:49 -04:00
parent 8b1b04cd7c
commit a6b3a20aeb
5 changed files with 26 additions and 0 deletions

View file

@ -118,6 +118,7 @@ class DracoplasmEffect extends ReplacementEffectImpl {
} }
ContinuousEffect effect = new SetBasePowerToughnessSourceEffect(power, toughness, Duration.WhileOnBattlefield); ContinuousEffect effect = new SetBasePowerToughnessSourceEffect(power, toughness, Duration.WhileOnBattlefield);
game.addEffect(effect, source); game.addEffect(effect, source);
this.discard(); // prevent multiple replacements e.g. on blink
return false; return false;
} }
} }

View file

@ -99,6 +99,7 @@ class MinionOfTheWastesEffect extends ReplacementEffectImpl {
payAmount, payAmount, Duration.WhileOnBattlefield payAmount, payAmount, Duration.WhileOnBattlefield
), source); ), source);
creature.addInfo("life paid", CardUtil.addToolTipMarkTags("Life paid: " + payAmount), game); creature.addInfo("life paid", CardUtil.addToolTipMarkTags("Life paid: " + payAmount), game);
this.discard(); // prevent multiple replacements e.g. on blink
return false; return false;
} }
} }

View file

@ -123,6 +123,7 @@ class NamelessRaceEffect extends ReplacementEffectImpl {
payAmount, payAmount, Duration.WhileOnBattlefield payAmount, payAmount, Duration.WhileOnBattlefield
), source); ), source);
creature.addInfo("life paid", CardUtil.addToolTipMarkTags("Life paid: " + payAmount), game); creature.addInfo("life paid", CardUtil.addToolTipMarkTags("Life paid: " + payAmount), game);
this.discard(); // prevent multiple replacements e.g. on blink
return false; return false;
} }
} }

View file

@ -107,6 +107,7 @@ class WoodElementalEffect extends ReplacementEffectImpl {
} }
} }
game.addEffect(new SetBasePowerToughnessSourceEffect(value, value, Duration.WhileOnBattlefield), source); game.addEffect(new SetBasePowerToughnessSourceEffect(value, value, Duration.WhileOnBattlefield), source);
this.discard(); // prevent multiple replacements e.g. on blink
return false; return false;
} }
} }

View file

@ -32,4 +32,26 @@ public class MinionOfTheWastesTest extends CardTestPlayerBase {
assertPowerToughness(playerA, minion, 3, 3); 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
} }