From fa0e295932a1400369e33026b13cb4033d145786 Mon Sep 17 00:00:00 2001 From: Evan Kranzler Date: Thu, 17 Jan 2019 17:40:15 -0500 Subject: [PATCH] updated Ajani's Pridemate to reflect recent errata --- .../src/mage/cards/a/AjanisPridemate.java | 51 ++++--------------- .../GainLifeControllerTriggeredAbility.java | 6 +-- 2 files changed, 11 insertions(+), 46 deletions(-) diff --git a/Mage.Sets/src/mage/cards/a/AjanisPridemate.java b/Mage.Sets/src/mage/cards/a/AjanisPridemate.java index 124891d3c79..ad07f8d4e93 100644 --- a/Mage.Sets/src/mage/cards/a/AjanisPridemate.java +++ b/Mage.Sets/src/mage/cards/a/AjanisPridemate.java @@ -2,38 +2,37 @@ package mage.cards.a; -import java.util.UUID; import mage.MageInt; -import mage.abilities.TriggeredAbilityImpl; +import mage.abilities.common.GainLifeControllerTriggeredAbility; import mage.abilities.effects.common.counter.AddCountersSourceEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SubType; -import mage.constants.Zone; import mage.counters.CounterType; -import mage.game.Game; -import mage.game.events.GameEvent; -import mage.game.events.GameEvent.EventType; + +import java.util.UUID; /** - * * @author BetaSteward_at_googlemail.com */ public final class AjanisPridemate extends CardImpl { public AjanisPridemate(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{W}"); + super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{W}"); this.subtype.add(SubType.CAT); this.subtype.add(SubType.SOLDIER); this.power = new MageInt(2); this.toughness = new MageInt(2); - this.addAbility(new AjanisPridemateAbility()); + // Whenever you gain life, put a +1/+1 counter on Ajani's Pridemate. + this.addAbility(new GainLifeControllerTriggeredAbility( + new AddCountersSourceEffect(CounterType.P1P1.createInstance()), false + )); } - public AjanisPridemate(final AjanisPridemate card) { + private AjanisPridemate(final AjanisPridemate card) { super(card); } @@ -43,35 +42,3 @@ public final class AjanisPridemate extends CardImpl { } } - -class AjanisPridemateAbility extends TriggeredAbilityImpl { - - public AjanisPridemateAbility() { - super(Zone.BATTLEFIELD, new AddCountersSourceEffect(CounterType.P1P1.createInstance()), true); - } - - public AjanisPridemateAbility(final AjanisPridemateAbility ability) { - super(ability); - } - - @Override - public AjanisPridemateAbility copy() { - return new AjanisPridemateAbility(this); - } - - @Override - public boolean checkEventType(GameEvent event, Game game) { - return event.getType() == EventType.GAINED_LIFE; - } - - @Override - public boolean checkTrigger(GameEvent event, Game game) { - return event.getPlayerId().equals(controllerId); - } - - @Override - public String getRule() { - return "Whenever you gain life, you may put a +1/+1 counter on {this}."; - } - -} \ No newline at end of file diff --git a/Mage/src/main/java/mage/abilities/common/GainLifeControllerTriggeredAbility.java b/Mage/src/main/java/mage/abilities/common/GainLifeControllerTriggeredAbility.java index 09bf317c733..f78e0f9d3e1 100644 --- a/Mage/src/main/java/mage/abilities/common/GainLifeControllerTriggeredAbility.java +++ b/Mage/src/main/java/mage/abilities/common/GainLifeControllerTriggeredAbility.java @@ -9,12 +9,11 @@ import mage.game.events.GameEvent; import mage.target.targetpointer.FixedTarget; /** - * * @author LevelX2 */ public class GainLifeControllerTriggeredAbility extends TriggeredAbilityImpl { - private boolean setTargetPointer; + private final boolean setTargetPointer; public GainLifeControllerTriggeredAbility(Effect effect, boolean optional) { this(effect, optional, false); @@ -56,7 +55,6 @@ public class GainLifeControllerTriggeredAbility extends TriggeredAbilityImpl { @Override public String getRule() { - return new StringBuilder("Whenever you gain life, ").append(super.getRule()).toString(); + return "Whenever you gain life, " + super.getRule(); } - }