From e3acfa4344a548cd4da327a3c9dff109a5cdf6d5 Mon Sep 17 00:00:00 2001 From: Alex Vasile <48962821+Alex-Vasile@users.noreply.github.com> Date: Wed, 18 May 2022 12:27:46 -0600 Subject: [PATCH] Added test for Proliferate hint. --- Mage.Sets/src/mage/cards/p/ParkHeightsMaverick.java | 2 +- Mage.Sets/src/mage/cards/p/PollenbrightDruid.java | 2 +- Mage.Sets/src/mage/cards/s/SwordOfTruthAndJustice.java | 5 +++-- Mage.Sets/src/mage/cards/v/VoltCharge.java | 5 +++-- Mage.Sets/src/mage/cards/w/WanderersStrike.java | 3 +-- .../src/test/java/mage/verify/VerifyCardDataTest.java | 2 ++ .../abilities/effects/common/counter/ProliferateEffect.java | 2 +- 7 files changed, 12 insertions(+), 9 deletions(-) diff --git a/Mage.Sets/src/mage/cards/p/ParkHeightsMaverick.java b/Mage.Sets/src/mage/cards/p/ParkHeightsMaverick.java index dcb5a76889..9286d352ad 100644 --- a/Mage.Sets/src/mage/cards/p/ParkHeightsMaverick.java +++ b/Mage.Sets/src/mage/cards/p/ParkHeightsMaverick.java @@ -36,7 +36,7 @@ public final class ParkHeightsMaverick extends CardImpl { // Whenever Park Heights Maverick deals combat damage to a player or dies, proliferate. this.addAbility(new OrTriggeredAbility( - Zone.ALL, new ProliferateEffect(), false, + Zone.ALL, new ProliferateEffect(false), false, "Whenever {this} deals combat damage to a player or dies, ", new DealsCombatDamageToAPlayerTriggeredAbility(null, false), new DiesSourceTriggeredAbility(null, false) diff --git a/Mage.Sets/src/mage/cards/p/PollenbrightDruid.java b/Mage.Sets/src/mage/cards/p/PollenbrightDruid.java index cb51f26780..4616527e74 100644 --- a/Mage.Sets/src/mage/cards/p/PollenbrightDruid.java +++ b/Mage.Sets/src/mage/cards/p/PollenbrightDruid.java @@ -36,7 +36,7 @@ public final class PollenbrightDruid extends CardImpl { ability.addTarget(new TargetCreaturePermanent()); // • Proliferate. (Choose any number of permanents and/or players, then give each another counter of each kind already there.) - ability.addMode(new Mode(new ProliferateEffect())); + ability.addMode(new Mode(new ProliferateEffect(true))); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/SwordOfTruthAndJustice.java b/Mage.Sets/src/mage/cards/s/SwordOfTruthAndJustice.java index 4108d854ae..03589034c2 100644 --- a/Mage.Sets/src/mage/cards/s/SwordOfTruthAndJustice.java +++ b/Mage.Sets/src/mage/cards/s/SwordOfTruthAndJustice.java @@ -66,7 +66,8 @@ class SwordOfTruthAndJusticeEffect extends OneShotEffect { SwordOfTruthAndJusticeEffect() { super(Outcome.Benefit); - staticText = "put a +1/+1 counter on a creature you control, then proliferate"; + staticText = "put a +1/+1 counter on a creature you control, then proliferate. " + + "(Choose any number of permanents and/or players, then give each another counter of each kind already there.)"; } private SwordOfTruthAndJusticeEffect(final SwordOfTruthAndJusticeEffect effect) { @@ -92,6 +93,6 @@ class SwordOfTruthAndJusticeEffect extends OneShotEffect { permanent.addCounters(CounterType.P1P1.createInstance(), source.getControllerId(), source, game); } } - return new ProliferateEffect().apply(game, source); + return new ProliferateEffect(true).apply(game, source); } } \ No newline at end of file diff --git a/Mage.Sets/src/mage/cards/v/VoltCharge.java b/Mage.Sets/src/mage/cards/v/VoltCharge.java index 7c216a4516..b6a567d3f2 100644 --- a/Mage.Sets/src/mage/cards/v/VoltCharge.java +++ b/Mage.Sets/src/mage/cards/v/VoltCharge.java @@ -17,9 +17,10 @@ public final class VoltCharge extends CardImpl { public VoltCharge(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{2}{R}"); - // Volt Charge deals 3 damage to any target. Proliferate. (You choose any number of permanents and/or players with counters on them, then give each another counter of a kind already there.) + // Volt Charge deals 3 damage to any target. + // Proliferate. (Choose any number of permanents and/or players, then give each another counter of each kind already there.) this.getSpellAbility().addEffect(new DamageTargetEffect(3)); - this.getSpellAbility().addEffect(new ProliferateEffect()); + this.getSpellAbility().addEffect(new ProliferateEffect(true)); this.getSpellAbility().addTarget(new TargetAnyTarget()); } diff --git a/Mage.Sets/src/mage/cards/w/WanderersStrike.java b/Mage.Sets/src/mage/cards/w/WanderersStrike.java index e707faed14..ec68d87082 100644 --- a/Mage.Sets/src/mage/cards/w/WanderersStrike.java +++ b/Mage.Sets/src/mage/cards/w/WanderersStrike.java @@ -17,10 +17,9 @@ public final class WanderersStrike extends CardImpl { public WanderersStrike(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{4}{W}"); - // Exile target creature, then proliferate. this.getSpellAbility().addEffect(new ExileTargetEffect()); - this.getSpellAbility().addEffect(new ProliferateEffect().concatBy("then")); + this.getSpellAbility().addEffect(new ProliferateEffect(true).concatBy(", then")); this.getSpellAbility().addTarget(new TargetCreaturePermanent()); } diff --git a/Mage.Verify/src/test/java/mage/verify/VerifyCardDataTest.java b/Mage.Verify/src/test/java/mage/verify/VerifyCardDataTest.java index b8108a6241..bd84ffc0d9 100644 --- a/Mage.Verify/src/test/java/mage/verify/VerifyCardDataTest.java +++ b/Mage.Verify/src/test/java/mage/verify/VerifyCardDataTest.java @@ -9,6 +9,7 @@ import mage.abilities.common.WerewolfBackTriggeredAbility; import mage.abilities.common.WerewolfFrontTriggeredAbility; import mage.abilities.effects.Effect; import mage.abilities.effects.common.FightTargetsEffect; +import mage.abilities.effects.common.counter.ProliferateEffect; import mage.abilities.effects.keyword.ScryEffect; import mage.abilities.keyword.*; import mage.cards.*; @@ -1422,6 +1423,7 @@ public class VerifyCardDataTest { hints.put(ScryEffect.class, "Look at the top card of your library. You may put that card on the bottom of your library"); hints.put(EquipAbility.class, "Equip only as a sorcery."); hints.put(WardAbility.class, "becomes the target of a spell or ability an opponent controls"); + hints.put(ProliferateEffect.class, "Choose any number of permanents and/or players, then give each another counter of each kind already there."); for (Class objectClass : hints.keySet()) { String objectHint = hints.get(objectClass); diff --git a/Mage/src/main/java/mage/abilities/effects/common/counter/ProliferateEffect.java b/Mage/src/main/java/mage/abilities/effects/common/counter/ProliferateEffect.java index 758dfa52c7..7f3928a467 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/counter/ProliferateEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/counter/ProliferateEffect.java @@ -33,7 +33,7 @@ public class ProliferateEffect extends OneShotEffect { super(Outcome.Benefit); staticText = "proliferate" + afterText; if (showAbilityHint) { - staticText += ". (You choose any number of permanents and/or players with counters on them, then give each another counter of each kind already there.)"; + staticText += ". (Choose any number of permanents and/or players, then give each another counter of each kind already there.)"; } }