diff --git a/Mage.Sets/src/mage/cards/s/StarCharter.java b/Mage.Sets/src/mage/cards/s/StarCharter.java index 6c13b3ff469..615b8624d82 100644 --- a/Mage.Sets/src/mage/cards/s/StarCharter.java +++ b/Mage.Sets/src/mage/cards/s/StarCharter.java @@ -42,7 +42,7 @@ public final class StarCharter extends CardImpl { new LookLibraryAndPickControllerEffect( 4, 1, filter, PutCards.HAND, PutCards.BOTTOM_RANDOM ), TargetController.YOU, YouGainedOrLostLifeCondition.instance, false - ), new PlayerGainedLifeWatcher()); + ).addHint(YouGainedOrLostLifeCondition.getHint()), new PlayerGainedLifeWatcher()); } private StarCharter(final StarCharter card) { diff --git a/Mage.Sets/src/mage/cards/s/StarlitSoothsayer.java b/Mage.Sets/src/mage/cards/s/StarlitSoothsayer.java index 0df4baa770e..f01cf9b6a1e 100644 --- a/Mage.Sets/src/mage/cards/s/StarlitSoothsayer.java +++ b/Mage.Sets/src/mage/cards/s/StarlitSoothsayer.java @@ -34,7 +34,7 @@ public final class StarlitSoothsayer extends CardImpl { this.addAbility(new BeginningOfEndStepTriggeredAbility( new SurveilEffect(1), TargetController.YOU, YouGainedOrLostLifeCondition.instance, false - ), new PlayerGainedLifeWatcher()); + ).addHint(YouGainedOrLostLifeCondition.getHint()), new PlayerGainedLifeWatcher()); } private StarlitSoothsayer(final StarlitSoothsayer card) { diff --git a/Mage.Sets/src/mage/cards/s/StarseerMentor.java b/Mage.Sets/src/mage/cards/s/StarseerMentor.java index 9c55bff2a30..b22536e636c 100644 --- a/Mage.Sets/src/mage/cards/s/StarseerMentor.java +++ b/Mage.Sets/src/mage/cards/s/StarseerMentor.java @@ -3,18 +3,13 @@ package mage.cards.s; import mage.MageInt; import mage.abilities.Ability; import mage.abilities.common.BeginningOfEndStepTriggeredAbility; -import mage.abilities.condition.Condition; -import mage.abilities.condition.OrCondition; -import mage.abilities.condition.common.YouGainedLifeCondition; -import mage.abilities.condition.common.YouLostLifeCondition; +import mage.abilities.condition.common.YouGainedOrLostLifeCondition; import mage.abilities.costs.OrCost; import mage.abilities.costs.common.DiscardCardCost; import mage.abilities.costs.common.SacrificeTargetCost; import mage.abilities.decorator.ConditionalInterveningIfTriggeredAbility; import mage.abilities.effects.common.DoUnlessTargetPlayerOrTargetsControllerPaysEffect; import mage.abilities.effects.common.LoseLifeTargetEffect; -import mage.abilities.hint.ConditionHint; -import mage.abilities.hint.Hint; import mage.abilities.keyword.FlyingAbility; import mage.abilities.keyword.VigilanceAbility; import mage.cards.CardImpl; @@ -26,7 +21,6 @@ import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; import mage.target.common.TargetOpponent; import mage.watchers.common.PlayerGainedLifeWatcher; -import mage.watchers.common.PlayerLostLifeWatcher; import java.util.UUID; @@ -35,14 +29,6 @@ import java.util.UUID; */ public final class StarseerMentor extends CardImpl { - private static final Condition condition = - new OrCondition( - "if you gained or lost life this turn", - new YouGainedLifeCondition(), - new YouLostLifeCondition() - ); - private static final Hint hint = new ConditionHint(condition); - private static final FilterControlledPermanent filter = new FilterControlledPermanent("nonland permanent"); static { @@ -75,12 +61,12 @@ public final class StarseerMentor extends CardImpl { ), "Sacrifice a nonland permanent or discard a card to prevent losing 3 life?" ), TargetController.YOU, false - ), condition, "At the beginning of your end step, if you gained or lost life this turn, " + ), YouGainedOrLostLifeCondition.instance, "At the beginning of your end step, if you gained or lost life this turn, " + "target opponent loses 3 life unless they sacrifice a nonland permanent or discard a card." ); ability.addTarget(new TargetOpponent()); ability.addWatcher(new PlayerGainedLifeWatcher()); - ability.addHint(hint); + ability.addHint(YouGainedOrLostLifeCondition.getHint()); this.addAbility(ability); } diff --git a/Mage/src/main/java/mage/abilities/condition/common/YouGainedOrLostLifeCondition.java b/Mage/src/main/java/mage/abilities/condition/common/YouGainedOrLostLifeCondition.java index ee96df11f1f..376d61dcc7d 100644 --- a/Mage/src/main/java/mage/abilities/condition/common/YouGainedOrLostLifeCondition.java +++ b/Mage/src/main/java/mage/abilities/condition/common/YouGainedOrLostLifeCondition.java @@ -2,6 +2,8 @@ package mage.abilities.condition.common; import mage.abilities.Ability; import mage.abilities.condition.Condition; +import mage.abilities.hint.ConditionHint; +import mage.abilities.hint.Hint; import mage.game.Game; import mage.watchers.common.PlayerGainedLifeWatcher; import mage.watchers.common.PlayerLostLifeWatcher; @@ -14,6 +16,12 @@ import mage.watchers.common.PlayerLostLifeWatcher; public enum YouGainedOrLostLifeCondition implements Condition { instance; + private static final Hint hint = new ConditionHint(instance); + + public static Hint getHint() { + return hint; + } + @Override public boolean apply(Game game, Ability source) { return game