mirror of
https://github.com/magefree/mage.git
synced 2026-01-26 21:29:17 -08:00
Monarch abilities - added card hint with monarch info to all related cards (#11424);
This commit is contained in:
parent
073d9dcbc6
commit
225da087f9
50 changed files with 164 additions and 58 deletions
|
|
@ -10,6 +10,7 @@ import mage.abilities.effects.common.AddContinuousEffectToGame;
|
|||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.effects.common.combat.CantBlockAllEffect;
|
||||
import mage.abilities.effects.common.combat.CantBlockTargetEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.abilities.keyword.LifelinkAbility;
|
||||
import mage.abilities.keyword.VigilanceAbility;
|
||||
import mage.cards.CardImpl;
|
||||
|
|
@ -44,7 +45,7 @@ public final class AragornKingOfGondor extends CardImpl {
|
|||
this.addAbility(LifelinkAbility.getInstance());
|
||||
|
||||
// When Aragorn, King of Gondor enters the battlefield, you become the monarch.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()).addHint(MonarchHint.instance));
|
||||
|
||||
// Whenever Aragorn attacks, up to one target creature can't block this turn. If you're the monarch, creatures can't block this turn.
|
||||
Ability ability = new AttacksTriggeredAbility(new CantBlockTargetEffect(Duration.EndOfTurn));
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@ import mage.abilities.common.DealsDamageToAPlayerAllTriggeredAbility;
|
|||
import mage.abilities.decorator.ConditionalInterveningIfTriggeredAbility;
|
||||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.effects.common.DrawCardTargetEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -44,7 +45,7 @@ public final class ArchivistOfGondor extends CardImpl {
|
|||
SetTargetPointer.NONE, true
|
||||
), (game, source) -> game.getMonarchId() == null, "When your commander " +
|
||||
"deals combat damage to a player, if there is no monarch, you become the monarch."
|
||||
));
|
||||
).addHint(MonarchHint.instance));
|
||||
|
||||
// At the beginning of the monarch's end step, that player draws a card.
|
||||
this.addAbility(new BeginningOfEndStepTriggeredAbility(
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@ import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
|||
import mage.abilities.common.SimpleStaticAbility;
|
||||
import mage.abilities.effects.ReplacementEffectImpl;
|
||||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.abilities.keyword.FlyingAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
|
|
@ -34,7 +35,7 @@ public final class ArchonOfCoronation extends CardImpl {
|
|||
this.addAbility(FlyingAbility.getInstance());
|
||||
|
||||
// When Archon of Coronation enters the battlefield, you become the monarch.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()).addHint(MonarchHint.instance));
|
||||
|
||||
// As long as you're the monarch, damage doesn't cause you to lose life.
|
||||
this.addAbility(new SimpleStaticAbility(new ArchonOfCoronationEffect()));
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@ import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
|||
import mage.abilities.common.SimpleStaticAbility;
|
||||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.effects.common.combat.CantBeBlockedByAllSourceEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -38,7 +39,7 @@ public final class AzureFleetAdmiral extends CardImpl {
|
|||
this.toughness = new MageInt(3);
|
||||
|
||||
// When Azure Fleet Admiral enters the battlefield, you become the monarch.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()).addHint(MonarchHint.instance));
|
||||
|
||||
// Azure Fleet Admiral can't be blocked by creatures the monarch controls.
|
||||
this.addAbility(new SimpleStaticAbility(
|
||||
|
|
|
|||
|
|
@ -9,6 +9,7 @@ import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
|||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.effects.common.combat.CantBeBlockedSourceEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -35,7 +36,7 @@ public final class CanalCourier extends CardImpl {
|
|||
this.toughness = new MageInt(5);
|
||||
|
||||
// When Canal Courier enters the battlefield, you become the monarch.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect(), false));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()).addHint(MonarchHint.instance));
|
||||
|
||||
// Whenever Canal Courier and another creature attack different players, Canal Courier can't be blocked this combat.
|
||||
Effect effect = new CantBeBlockedSourceEffect(Duration.EndOfCombat);
|
||||
|
|
|
|||
|
|
@ -13,6 +13,7 @@ import mage.abilities.effects.OneShotEffect;
|
|||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.effects.common.DoIfCostPaid;
|
||||
import mage.abilities.effects.common.combat.TargetPlayerCantAttackYouEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.*;
|
||||
|
|
@ -36,7 +37,7 @@ public final class ChampionsOfMinasTirith extends CardImpl {
|
|||
this.toughness = new MageInt(6);
|
||||
|
||||
// When Champions of Minas Tirith enters the battlefield, you become the monarch.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect(), false));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()).addHint(MonarchHint.instance));
|
||||
|
||||
// At the beginning of combat on each opponent's turn, if you're the monarch, that opponent may pay {X}, where X is the number of cards in their hand. If they don't, they can't attack you this combat.
|
||||
this.addAbility(new ConditionalTriggeredAbility(
|
||||
|
|
@ -50,7 +51,7 @@ public final class ChampionsOfMinasTirith extends CardImpl {
|
|||
MonarchIsSourceControllerCondition.instance,
|
||||
"At the beginning of combat on each opponent's turn, if you're the monarch, that opponent may pay {X}, "
|
||||
+ "where X is the number of cards in their hand. If they don't, they can't attack you this combat."
|
||||
));
|
||||
).addHint(MonarchHint.instance));
|
||||
}
|
||||
|
||||
private ChampionsOfMinasTirith(final ChampionsOfMinasTirith card) {
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@ import mage.abilities.common.BeginningOfUpkeepTriggeredAbility;
|
|||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.cards.Cards;
|
||||
|
|
@ -31,7 +32,7 @@ public final class CourtOfAmbition extends CardImpl {
|
|||
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{B}{B}");
|
||||
|
||||
// When Court of Ambition enters the battlefield, you become the monarch.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()).addHint(MonarchHint.instance));
|
||||
|
||||
// At the beginning of your upkeep, each opponent loses 3 life unless they discard a card. If you're the monarch, instead each opponent loses 6 life unless they discard two cards.
|
||||
this.addAbility(new BeginningOfUpkeepTriggeredAbility(
|
||||
|
|
|
|||
|
|
@ -10,6 +10,7 @@ import mage.abilities.decorator.ConditionalOneShotEffect;
|
|||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.effects.common.ReturnFromGraveyardToBattlefieldTargetEffect;
|
||||
import mage.abilities.effects.common.ReturnFromGraveyardToHandTargetEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -36,7 +37,7 @@ public final class CourtOfArdenvale extends CardImpl {
|
|||
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{W}{W}");
|
||||
|
||||
// When Court of Ardenvale enters the battlefield, you become the monarch.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()).addHint(MonarchHint.instance));
|
||||
|
||||
// At the beginning of your upkeep, return target permanent card with mana value 3 or less from your graveyard to your hand. If you're the monarch, return that permanent card to the battlefield instead.
|
||||
Ability ability = new BeginningOfUpkeepTriggeredAbility(new ConditionalOneShotEffect(
|
||||
|
|
@ -47,6 +48,7 @@ public final class CourtOfArdenvale extends CardImpl {
|
|||
), TargetController.YOU, false
|
||||
);
|
||||
ability.addTarget(new TargetCardInYourGraveyard(filter));
|
||||
ability.addHint(MonarchHint.instance);
|
||||
this.addAbility(ability);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@ import mage.abilities.condition.common.MonarchIsSourceControllerCondition;
|
|||
import mage.abilities.decorator.ConditionalOneShotEffect;
|
||||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.effects.common.PutCardFromHandOntoBattlefieldEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -23,7 +24,7 @@ public final class CourtOfBounty extends CardImpl {
|
|||
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{G}{G}");
|
||||
|
||||
// When Court of Bounty enters the battlefield, you become the monarch.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()).addHint(MonarchHint.instance));
|
||||
|
||||
// At the beginning of your upkeep, you may put a land card from your hand onto the battlefield. If you're the monarch, instead you may put a creature or land card from your hand onto the battlefield.
|
||||
this.addAbility(new BeginningOfUpkeepTriggeredAbility(new ConditionalOneShotEffect(
|
||||
|
|
@ -32,7 +33,8 @@ public final class CourtOfBounty extends CardImpl {
|
|||
MonarchIsSourceControllerCondition.instance, "you may put a land card " +
|
||||
"from your hand onto the battlefield. If you're the monarch, " +
|
||||
"instead you may put a creature or land card from your hand onto the battlefield"
|
||||
), TargetController.YOU, false));
|
||||
), TargetController.YOU, false)
|
||||
.addHint(MonarchHint.instance));
|
||||
}
|
||||
|
||||
private CourtOfBounty(final CourtOfBounty card) {
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@ import mage.abilities.common.BeginningOfUpkeepTriggeredAbility;
|
|||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -29,7 +30,7 @@ public final class CourtOfCunning extends CardImpl {
|
|||
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{1}{U}{U}");
|
||||
|
||||
// When Court of Cunning enters the battlefield, you become the monarch.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()).addHint(MonarchHint.instance));
|
||||
|
||||
// At the beginning of your upkeep, any number of target players each mill two cards. If you're the monarch, each of those players mills ten cards instead.
|
||||
Ability ability = new BeginningOfUpkeepTriggeredAbility(
|
||||
|
|
|
|||
|
|
@ -10,6 +10,7 @@ import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
|||
import mage.abilities.effects.common.CreateTokenEffect;
|
||||
import mage.abilities.effects.common.DamagePlayersEffect;
|
||||
import mage.abilities.hint.common.CreaturesYouControlHint;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -28,7 +29,7 @@ public final class CourtOfEmbereth extends CardImpl {
|
|||
|
||||
|
||||
// When Court of Embereth enters the battlefield, you become the monarch.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()).addHint(MonarchHint.instance));
|
||||
|
||||
// At the beginning of your upkeep, create a 3/1 red Knight creature token. Then if you're the monarch, Court of Embereth deals X damage to each opponent, where X is the number of creatures you control.
|
||||
Ability ability = new BeginningOfUpkeepTriggeredAbility(
|
||||
|
|
@ -41,6 +42,7 @@ public final class CourtOfEmbereth extends CardImpl {
|
|||
MonarchIsSourceControllerCondition.instance
|
||||
).concatBy("Then"));
|
||||
ability.addHint(CreaturesYouControlHint.instance);
|
||||
ability.addHint(MonarchHint.instance);
|
||||
this.addAbility(ability);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@ import mage.abilities.decorator.ConditionalOneShotEffect;
|
|||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.effects.common.counter.DistributeCountersEffect;
|
||||
import mage.abilities.effects.common.counter.DoubleCounterOnEachPermanentEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -28,7 +29,7 @@ public final class CourtOfGarenbrig extends CardImpl {
|
|||
|
||||
|
||||
// When Court of Garenbrig enters the battlefield, you become the monarch.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()).addHint(MonarchHint.instance));
|
||||
|
||||
// At the beginning of your upkeep, distribute two +1/+1 counters among up to two target creatures. Then if you're the monarch, double the number of +1/+1 counters on each creature you control.
|
||||
Ability ability = new BeginningOfUpkeepTriggeredAbility(
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@ import mage.abilities.condition.common.MonarchIsSourceControllerCondition;
|
|||
import mage.abilities.decorator.ConditionalOneShotEffect;
|
||||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.effects.common.CreateTokenEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -24,7 +25,7 @@ public final class CourtOfGrace extends CardImpl {
|
|||
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{W}{W}");
|
||||
|
||||
// When Court of Grace enters the battlefield, you become the monarch.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()).addHint(MonarchHint.instance));
|
||||
|
||||
// At the beginning of your upkeep, create a 1/1 white Spirit creature token with flying. If you're the monarch, create a 4/4 white Angel creature token with flying instead.
|
||||
this.addAbility(new BeginningOfUpkeepTriggeredAbility(new ConditionalOneShotEffect(
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@ import mage.abilities.condition.common.MonarchIsSourceControllerCondition;
|
|||
import mage.abilities.decorator.ConditionalOneShotEffect;
|
||||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.effects.common.DamageTargetEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -24,7 +25,7 @@ public final class CourtOfIre extends CardImpl {
|
|||
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{3}{R}{R}");
|
||||
|
||||
// When Court of Ire enters the battlefield, you become the monarch.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()).addHint(MonarchHint.instance));
|
||||
|
||||
// At the beginning of your upkeep, Court of Ire deals 2 damage to any target. If you're the monarch, it deals 7 damage to that player or permanent instead.
|
||||
Ability ability = new BeginningOfUpkeepTriggeredAbility(new ConditionalOneShotEffect(
|
||||
|
|
|
|||
|
|
@ -11,6 +11,7 @@ import mage.abilities.decorator.ConditionalOneShotEffect;
|
|||
import mage.abilities.effects.AsThoughEffectImpl;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.cards.Card;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
|
|
@ -41,7 +42,7 @@ public final class CourtOfLocthwain extends CardImpl {
|
|||
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{B}{B}");
|
||||
|
||||
// When Court of Locthwain enters the battlefield, you become the monarch.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()).addHint(MonarchHint.instance));
|
||||
|
||||
// At the beginning of your upkeep, exile the top card of target opponent's library. You may play that card for as long as it remains exiled, and mana of any type can be spent to cast it. If you're the monarch, until end of turn, you may cast a spell from among cards exiled with Court of Locthwain without paying its mana cost.
|
||||
Ability ability = new BeginningOfUpkeepTriggeredAbility(
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@ import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
|||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.effects.common.CreateTokenCopyTargetEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -40,7 +41,7 @@ public final class CourtOfVantress extends CardImpl {
|
|||
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{U}{U}");
|
||||
|
||||
// When Court of Vantress enters the battlefield, you become the monarch.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()).addHint(MonarchHint.instance));
|
||||
|
||||
// At the beginning of your upkeep, choose up to one other target enchantment or artifact. If you're the monarch, you may create a token that's a copy of it. If you're not the monarch, you may have Court of Vantress become a copy of it, except it has this ability.
|
||||
this.addAbility(makeAbility());
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@ package mage.cards.c;
|
|||
import mage.MageInt;
|
||||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.abilities.keyword.TrampleAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
|
|
@ -28,7 +29,7 @@ public final class CrimsonFleetCommodore extends CardImpl {
|
|||
this.addAbility(TrampleAbility.getInstance());
|
||||
|
||||
// When Crimson Fleet Commodore enters the battlefield, you become the monarch.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()).addHint(MonarchHint.instance));
|
||||
}
|
||||
|
||||
private CrimsonFleetCommodore(final CrimsonFleetCommodore card) {
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@ import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
|||
import mage.abilities.common.SimpleStaticAbility;
|
||||
import mage.abilities.effects.RestrictionEffect;
|
||||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -31,7 +32,7 @@ public final class CrownHunterHireling extends CardImpl {
|
|||
this.toughness = new MageInt(4);
|
||||
|
||||
// When Crown-Hunter Hireling enters the battlefield, you become the monarch.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect(), false));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()).addHint(MonarchHint.instance));
|
||||
|
||||
// Crown-Hunter Hireling can't attack unless defending player is the monarch.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CrownHunterHirelingCantAttackEffect()));
|
||||
|
|
|
|||
|
|
@ -11,6 +11,7 @@ import mage.abilities.dynamicvalue.DynamicValue;
|
|||
import mage.abilities.dynamicvalue.common.PermanentsOnBattlefieldCount;
|
||||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.effects.common.continuous.BoostEquippedEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.abilities.keyword.EquipAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
|
|
@ -48,7 +49,7 @@ public final class CrownOfGondor extends CardImpl {
|
|||
),
|
||||
MonarchIsNotSetCondition.instance,
|
||||
"When a legendary creature enters the battlefield under your control, if there is no monarch, you become the monarch."
|
||||
));
|
||||
).addHint(MonarchHint.instance));
|
||||
|
||||
// Equip {4}. This ability costs {3} less to activate if you're the monarch.
|
||||
EquipAbility equip = new EquipAbility(4, false);
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@ import mage.abilities.common.BecomesMonarchSourceControllerTriggeredAbility;
|
|||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.effects.common.SacrificeEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -31,7 +32,7 @@ public final class CustodiLich extends CardImpl {
|
|||
this.toughness = new MageInt(2);
|
||||
|
||||
// When Custodi Lich enters the battlefield, you become the monarch.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect(), false));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()).addHint(MonarchHint.instance));
|
||||
|
||||
// Whenever you become the monarch, target player sacrifices a creature.
|
||||
Ability ability = new BecomesMonarchSourceControllerTriggeredAbility(new SacrificeEffect(new FilterControlledCreaturePermanent("creature"), 1, "target player"));
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@ import mage.abilities.condition.common.MonarchIsSourceControllerCondition;
|
|||
import mage.abilities.decorator.ConditionalContinuousEffect;
|
||||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.effects.common.continuous.GainAbilityControlledEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.abilities.keyword.HexproofAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
|
|
@ -29,7 +30,7 @@ public final class DawngladeRegent extends CardImpl {
|
|||
this.toughness = new MageInt(8);
|
||||
|
||||
// When Dawnglade Regent enters the battlefield, you become the monarch.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()).addHint(MonarchHint.instance));
|
||||
|
||||
// As long as you're the monarch, permanents you control have hexproof.
|
||||
this.addAbility(new SimpleStaticAbility(new ConditionalContinuousEffect(
|
||||
|
|
|
|||
|
|
@ -9,6 +9,7 @@ import mage.abilities.costs.common.TapSourceCost;
|
|||
import mage.abilities.costs.mana.ManaCostsImpl;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.effects.keyword.ScryEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.*;
|
||||
|
|
@ -45,6 +46,7 @@ public final class DenethorStoneSeer extends CardImpl {
|
|||
ability.addCost(new SacrificeSourceCost());
|
||||
ability.addTarget(new TargetPlayer());
|
||||
ability.addTarget(new TargetAnyTarget());
|
||||
ability.addHint(MonarchHint.instance);
|
||||
|
||||
this.addAbility(ability);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@ import mage.abilities.TriggeredAbilityImpl;
|
|||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -33,7 +34,7 @@ public final class EmberwildeCaptain extends CardImpl {
|
|||
this.toughness = new MageInt(2);
|
||||
|
||||
// When Emberwilde Captain enters the battlefield, you become the monarch.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()).addHint(MonarchHint.instance));
|
||||
|
||||
// Whenever an opponent attacks you while you're the monarch, Emberwilde Captain deals damage to that player equal to the number of cards in their hand.
|
||||
this.addAbility(new EmberwildeCaptainTriggeredAbility());
|
||||
|
|
|
|||
|
|
@ -9,6 +9,7 @@ import mage.abilities.condition.common.MonarchIsSourceControllerCondition;
|
|||
import mage.abilities.decorator.ConditionalContinuousEffect;
|
||||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.effects.common.combat.CanBlockAdditionalCreatureEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -30,7 +31,7 @@ public final class EntourageOfTrest extends CardImpl {
|
|||
this.toughness = new MageInt(4);
|
||||
|
||||
// When Entourage of Trest enters the battlefield, you become the monarch.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect(), false));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()).addHint(MonarchHint.instance));
|
||||
|
||||
// Entourage of Trest can block an additional creature each combat as long as you're the monarch.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@ import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
|||
import mage.abilities.dynamicvalue.common.PermanentsOnBattlefieldCount;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.effects.common.counter.AddCountersSourceEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.abilities.keyword.DoubleStrikeAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
|
|
@ -65,6 +66,7 @@ public final class EomerKingOfRohan extends CardImpl {
|
|||
);
|
||||
trigger.addTarget(new TargetPlayer());
|
||||
trigger.addTarget(new TargetAnyTarget());
|
||||
trigger.addHint(MonarchHint.instance);
|
||||
|
||||
this.addAbility(trigger);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -9,6 +9,7 @@ import mage.abilities.effects.common.AttachEffect;
|
|||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.effects.common.DontUntapInControllersUntapStepEnchantedEffect;
|
||||
import mage.abilities.effects.common.TapEnchantedEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.abilities.keyword.EnchantAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
|
|
@ -40,6 +41,7 @@ public final class FallFromFavor extends CardImpl {
|
|||
// When Fall from Favor enters the battlefield, tap enchanted creature and you become the monarch.
|
||||
ability = new EntersBattlefieldTriggeredAbility(new TapEnchantedEffect());
|
||||
ability.addEffect(new BecomesMonarchSourceEffect().concatBy("and"));
|
||||
ability.addHint(MonarchHint.instance);
|
||||
this.addAbility(ability);
|
||||
|
||||
// Enchanted creature doesn't untap during its controller's untap step unless that player is the monarch.
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@ import mage.abilities.common.EntersBattlefieldControlledTriggeredAbility;
|
|||
import mage.abilities.condition.common.MonarchIsSourceControllerCondition;
|
||||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.effects.common.CreateTokenEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.*;
|
||||
|
|
@ -39,7 +40,7 @@ public final class FaramirStewardOfGondor extends CardImpl {
|
|||
this.toughness = new MageInt(2);
|
||||
|
||||
// Whenever a legendary creature with mana value 4 or greater enters the battlefield under your control, you become the monarch.
|
||||
this.addAbility(new EntersBattlefieldControlledTriggeredAbility(new BecomesMonarchSourceEffect(), filter));
|
||||
this.addAbility(new EntersBattlefieldControlledTriggeredAbility(new BecomesMonarchSourceEffect(), filter).addHint(MonarchHint.instance));
|
||||
|
||||
// At the beginning of your end step, if you're the monarch, create two 1/1 white Human Soldier creature tokens.
|
||||
this.addAbility(new BeginningOfEndStepTriggeredAbility(
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@ import mage.abilities.effects.common.AttachEffect;
|
|||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.effects.common.combat.AttacksIfAbleAttachedEffect;
|
||||
import mage.abilities.effects.common.combat.CantAttackControllerAttachedEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.abilities.keyword.EnchantAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
|
|
@ -36,7 +37,7 @@ public final class FealtyToTheRealm extends CardImpl {
|
|||
this.addAbility(new EnchantAbility(auraTarget));
|
||||
|
||||
// When Fealty to the Realm enters the battlefield, you become the monarch.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()).addHint(MonarchHint.instance));
|
||||
|
||||
// The monarch controls enchanted creature.
|
||||
this.addAbility(new SimpleStaticAbility(new FealtyToTheRealmEffect()));
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@ package mage.cards.f;
|
|||
|
||||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.effects.common.continuous.BoostAllEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -20,6 +21,7 @@ public final class FeastOfSuccession extends CardImpl {
|
|||
// All creatures get -4/-4 until end of turn. You become the monarch.
|
||||
this.getSpellAbility().addEffect(new BoostAllEffect(-4, -4, Duration.EndOfTurn));
|
||||
this.getSpellAbility().addEffect(new BecomesMonarchSourceEffect().setText("You become the monarch"));
|
||||
this.getSpellAbility().addHint(MonarchHint.instance);
|
||||
}
|
||||
|
||||
private FeastOfSuccession(final FeastOfSuccession card) {
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@ import mage.abilities.dynamicvalue.common.ManacostVariableValue;
|
|||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.effects.common.CreateDelayedTriggeredAbilityEffect;
|
||||
import mage.abilities.effects.common.CreateTokenEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -26,7 +27,6 @@ public final class ForthEorlingas extends CardImpl {
|
|||
|
||||
public ForthEorlingas(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{X}{R}{W}");
|
||||
|
||||
|
||||
// Create X 2/2 red Human Knight creature tokens with trample and haste.
|
||||
this.getSpellAbility().addEffect(new CreateTokenEffect(
|
||||
|
|
@ -34,7 +34,10 @@ public final class ForthEorlingas extends CardImpl {
|
|||
));
|
||||
|
||||
// Whenever one or more creatures you control deal combat damage to one or more players this turn, you become the monarch.
|
||||
this.getSpellAbility().addEffect(new CreateDelayedTriggeredAbilityEffect(new ForthEorlingasTriggeredAbility()).concatBy("<br>"));
|
||||
this.getSpellAbility().addEffect(new CreateDelayedTriggeredAbilityEffect(
|
||||
new ForthEorlingasTriggeredAbility()).concatBy("<br>")
|
||||
);
|
||||
this.getSpellAbility().addHint(MonarchHint.instance);
|
||||
}
|
||||
|
||||
private ForthEorlingas(final ForthEorlingas card) {
|
||||
|
|
@ -52,6 +55,7 @@ class ForthEorlingasTriggeredAbility extends DelayedTriggeredAbility {
|
|||
public ForthEorlingasTriggeredAbility() {
|
||||
super(new BecomesMonarchSourceEffect(), Duration.EndOfTurn, false);
|
||||
this.setTriggerPhrase("Whenever one or more creatures you control deal combat damage to one or more players this turn, ");
|
||||
this.addHint(MonarchHint.instance);
|
||||
}
|
||||
|
||||
private ForthEorlingasTriggeredAbility(final ForthEorlingasTriggeredAbility ability) {
|
||||
|
|
|
|||
|
|
@ -9,6 +9,7 @@ import mage.abilities.condition.common.MonarchIsSourceControllerCondition;
|
|||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.common.GainLifeEffect;
|
||||
import mage.abilities.effects.common.LoseLifeOpponentsEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -36,6 +37,7 @@ public final class GarrulousSycophant extends CardImpl {
|
|||
Effect effect = new GainLifeEffect(1);
|
||||
effect.setText("and you gain 1 life");
|
||||
ability.addEffect(effect);
|
||||
ability.addHint(MonarchHint.instance);
|
||||
this.addAbility(ability);
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@ import mage.abilities.common.SimpleStaticAbility;
|
|||
import mage.abilities.effects.ContinuousRuleModifyingEffectImpl;
|
||||
import mage.abilities.effects.PreventionEffectImpl;
|
||||
import mage.abilities.effects.common.BecomesMonarchTargetEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.*;
|
||||
|
|
@ -37,6 +38,7 @@ public final class JaredCarthalionTrueHeir extends CardImpl {
|
|||
.setText("target opponent becomes the monarch"));
|
||||
ability.addEffect(new JaredCarthalionTrueHeirMonarchEffect());
|
||||
ability.addTarget(new TargetOpponent());
|
||||
ability.addHint(MonarchHint.instance);
|
||||
this.addAbility(ability);
|
||||
|
||||
// If damage would be dealt to Jared Carthalion while you're the monarch, prevent that damage and put that many +1/+1 counters on it.
|
||||
|
|
|
|||
|
|
@ -9,6 +9,7 @@ import mage.abilities.condition.common.MonarchIsSourceControllerCondition;
|
|||
import mage.abilities.decorator.ConditionalInterveningIfTriggeredAbility;
|
||||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.effects.common.combat.CantBeBlockedAllEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -34,7 +35,7 @@ public final class KeeperOfKeys extends CardImpl {
|
|||
this.toughness = new MageInt(4);
|
||||
|
||||
// When Keeper of Keys enters the battlefield, you become the monarch.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect(), false));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()).addHint(MonarchHint.instance));
|
||||
|
||||
// At the beginning of your upkeep, if you're the monarch, creatures you control can't be blocked this turn.
|
||||
this.addAbility(new ConditionalInterveningIfTriggeredAbility(new BeginningOfUpkeepTriggeredAbility(Zone.BATTLEFIELD,
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@ import mage.abilities.effects.Effect;
|
|||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.effects.common.GainLifeEffect;
|
||||
import mage.abilities.effects.common.LoseLifeTargetEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -35,7 +36,7 @@ public final class KnightsOfTheBlackRose extends CardImpl {
|
|||
this.toughness = new MageInt(4);
|
||||
|
||||
// When Knights of the Black Rose enters the battlefield, you become the monarch.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect(), false));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()).addHint(MonarchHint.instance));
|
||||
|
||||
// Whenever an opponent becomes the monarch, if you were the monarch as the turn began, that player loses 2 life and you gain 2 life.
|
||||
Ability ability = new KnightsOfTheBlackRoseTriggeredAbility(new LoseLifeTargetEffect(2));
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@ import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
|||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.effects.common.LoseLifeTargetEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -23,7 +24,7 @@ public final class MarchesasDecree extends CardImpl {
|
|||
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{3}{B}");
|
||||
|
||||
// When Marchesa's Decree enters the battlefield, you become the monarch.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect(), false));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()).addHint(MonarchHint.instance));
|
||||
|
||||
// Whenever a creature attacks you or a planeswalker you control, the controller of that creature loses 1 life.
|
||||
Effect effect = new LoseLifeTargetEffect(1);
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@ import mage.abilities.effects.Effects;
|
|||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.effects.common.CreateTokenEffect;
|
||||
import mage.abilities.effects.common.counter.AddCountersTargetEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.constants.SagaChapter;
|
||||
import mage.constants.SubType;
|
||||
import mage.cards.CardImpl;
|
||||
|
|
@ -51,6 +52,7 @@ public final class OathOfEorl extends CardImpl {
|
|||
new AddCountersTargetEffect(CounterType.INDESTRUCTIBLE.createInstance()),
|
||||
new BecomesMonarchSourceEffect()
|
||||
);
|
||||
sagaAbility.addHint(MonarchHint.instance);
|
||||
|
||||
// III-- Put an indestructible counter on up to one target Human.
|
||||
sagaAbility.addChapterEffect(
|
||||
|
|
|
|||
|
|
@ -12,6 +12,7 @@ import mage.abilities.effects.OneShotEffect;
|
|||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.effects.common.CreateDelayedTriggeredAbilityEffect;
|
||||
import mage.abilities.effects.common.ExileTargetEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -42,7 +43,7 @@ public final class PalaceJailer extends CardImpl {
|
|||
this.toughness = new MageInt(2);
|
||||
|
||||
// When Palace Jailer enters the battlefield, you become the monarch.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect(), false));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()).addHint(MonarchHint.instance));
|
||||
|
||||
// When Palace Jailer enters the battlefield, exile target creature an opponent controls until an opponent becomes the monarch. (That creature returns under its owner's control.)
|
||||
Ability ability = new EntersBattlefieldTriggeredAbility(new PalaceJailerExileEffect());
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@ import java.util.UUID;
|
|||
import mage.MageInt;
|
||||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -25,7 +26,7 @@ public final class PalaceSentinels extends CardImpl {
|
|||
this.toughness = new MageInt(4);
|
||||
|
||||
// When Palace Sentinels enters the battlefield, you become the monarch.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect(), false));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()).addHint(MonarchHint.instance));
|
||||
}
|
||||
|
||||
private PalaceSentinels(final PalaceSentinels card) {
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@ import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
|||
import mage.abilities.common.SimpleStaticAbility;
|
||||
import mage.abilities.effects.ReplacementEffectImpl;
|
||||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -35,7 +36,7 @@ public final class ProtectorOfTheCrown extends CardImpl {
|
|||
this.toughness = new MageInt(5);
|
||||
|
||||
// When Protector of the Crown enters the battlefield, you become the monarch.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect(), false));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()).addHint(MonarchHint.instance));
|
||||
|
||||
// All damage would be dealt to you is dealt to Protector of the Crown instead.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ProtectorOfTheCrownEffect()));
|
||||
|
|
|
|||
|
|
@ -10,6 +10,7 @@ import mage.abilities.condition.Condition;
|
|||
import mage.abilities.decorator.ConditionalInterveningIfTriggeredAbility;
|
||||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.effects.common.CreateTokenEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.abilities.keyword.DeathtouchAbility;
|
||||
import mage.abilities.keyword.HasteAbility;
|
||||
import mage.cards.CardImpl;
|
||||
|
|
@ -41,7 +42,7 @@ public final class QueenMarchesa extends CardImpl {
|
|||
// Haste
|
||||
this.addAbility(HasteAbility.getInstance());
|
||||
// When Queen Marchesa enters the battlefield, you become the monarch.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect(), false));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()).addHint(MonarchHint.instance));
|
||||
|
||||
// At the beginning of your upkeep, if an opponent is the monarch, create a 1/1 black Assassin creature token with deathtouch and haste.
|
||||
this.addAbility(new ConditionalInterveningIfTriggeredAbility(
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ import mage.MageInt;
|
|||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.effects.mana.AddManaOfAnyColorEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.abilities.keyword.TrampleAbility;
|
||||
import mage.abilities.mana.TriggeredManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
|
|
@ -34,7 +35,7 @@ public final class RegalBehemoth extends CardImpl {
|
|||
this.addAbility(TrampleAbility.getInstance());
|
||||
|
||||
// When Regal Behemoth enters the battlefield, you become the monarch.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect(), false));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()).addHint(MonarchHint.instance));
|
||||
|
||||
// Whenever you tap a land for mana while you're the monarch, add one mana of any color.
|
||||
this.addAbility(new RegalBehemothTriggeredManaAbility());
|
||||
|
|
|
|||
|
|
@ -10,6 +10,7 @@ import mage.abilities.effects.common.AddContinuousEffectToGame;
|
|||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.effects.common.continuous.BoostControlledEffect;
|
||||
import mage.abilities.effects.common.continuous.GainAbilityControlledEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -33,23 +34,27 @@ public final class RegalSliver extends CardImpl {
|
|||
|
||||
// Sliver creatures you control have "When this creature enters the battlefield, Slivers you control get +1/+1 until end of turn if you're the monarch. Otherwise, you become the monarch."
|
||||
TriggeredAbility trigger =
|
||||
new EntersBattlefieldTriggeredAbility(
|
||||
new ConditionalOneShotEffect(
|
||||
new AddContinuousEffectToGame(
|
||||
new BoostControlledEffect(1, 1, Duration.EndOfTurn,
|
||||
StaticFilters.FILTER_PERMANENT_SLIVERS
|
||||
)),
|
||||
new BecomesMonarchSourceEffect(),
|
||||
MonarchIsSourceControllerCondition.instance,
|
||||
"Slivers you control get +1/+1 until end of turn if you're the monarch. Otherwise, you become the monarch."
|
||||
)
|
||||
);
|
||||
new EntersBattlefieldTriggeredAbility(
|
||||
new ConditionalOneShotEffect(
|
||||
new AddContinuousEffectToGame(
|
||||
new BoostControlledEffect(1, 1, Duration.EndOfTurn,
|
||||
StaticFilters.FILTER_PERMANENT_SLIVERS
|
||||
)),
|
||||
new BecomesMonarchSourceEffect(),
|
||||
MonarchIsSourceControllerCondition.instance,
|
||||
"Slivers you control get +1/+1 until end of turn if you're the monarch. Otherwise, you become the monarch."
|
||||
)
|
||||
);
|
||||
|
||||
this.addAbility(new SimpleStaticAbility(new GainAbilityControlledEffect(
|
||||
trigger, Duration.WhileOnBattlefield,
|
||||
StaticFilters.FILTER_PERMANENT_ALL_SLIVERS
|
||||
).setText("Sliver creatures you control have \"When this creature enters the battlefield, "
|
||||
+ "Slivers you control get +1/+1 until end of turn if you're the monarch. Otherwise, you become the monarch.\"")));
|
||||
this.addAbility(
|
||||
new SimpleStaticAbility(
|
||||
new GainAbilityControlledEffect(
|
||||
trigger, Duration.WhileOnBattlefield,
|
||||
StaticFilters.FILTER_PERMANENT_ALL_SLIVERS
|
||||
).setText("Sliver creatures you control have \"When this creature enters the battlefield, "
|
||||
+ "Slivers you control get +1/+1 until end of turn if you're the monarch. Otherwise, you become the monarch.\"")
|
||||
).addHint(MonarchHint.instance)
|
||||
);
|
||||
}
|
||||
|
||||
private RegalSliver(final RegalSliver card) {
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@ import mage.abilities.condition.common.MonarchIsSourceControllerCondition;
|
|||
import mage.abilities.decorator.ConditionalInterveningIfTriggeredAbility;
|
||||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.effects.common.CreateTokenEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.abilities.keyword.FlyingAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
|
|
@ -32,7 +33,7 @@ public final class SkylineDespot extends CardImpl {
|
|||
// Flying
|
||||
this.addAbility(FlyingAbility.getInstance());
|
||||
// When Skyline Despot enters the battlefield, you become the monarch.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect(), false));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()).addHint(MonarchHint.instance));
|
||||
|
||||
// At the beginning of your upkeep, if you're the monarch, put a 5/5 red Dragon creature token with flying onto the battlefield.
|
||||
this.addAbility(new ConditionalInterveningIfTriggeredAbility(
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@ import mage.abilities.condition.common.MonarchIsSourceControllerCondition;
|
|||
import mage.abilities.decorator.ConditionalInterveningIfTriggeredAbility;
|
||||
import mage.abilities.effects.common.LoseLifeTargetEffect;
|
||||
import mage.abilities.effects.common.TransformSourceEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.abilities.keyword.FlyingAbility;
|
||||
import mage.abilities.keyword.MoreThanMeetsTheEyeAbility;
|
||||
import mage.cards.CardImpl;
|
||||
|
|
@ -46,6 +47,7 @@ public final class StarscreamPowerHungry extends CardImpl {
|
|||
"Whenever you draw a card, if you're the monarch, target opponent loses 2 life."
|
||||
);
|
||||
trigger.addTarget(new TargetOpponent());
|
||||
trigger.addHint(MonarchHint.instance);
|
||||
this.addAbility(trigger);
|
||||
|
||||
// Whenever one or more creatures deal combat damage to you, convert Starscream.
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@ import mage.abilities.condition.common.MonarchIsNotSetCondition;
|
|||
import mage.abilities.decorator.ConditionalInterveningIfTriggeredAbility;
|
||||
import mage.abilities.effects.common.BecomesMonarchTargetEffect;
|
||||
import mage.abilities.effects.common.TransformSourceEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.abilities.keyword.FlyingAbility;
|
||||
import mage.abilities.keyword.HasteAbility;
|
||||
import mage.abilities.keyword.LivingMetalAbility;
|
||||
|
|
@ -51,7 +52,7 @@ public final class StarscreamSeekerLeader extends CardImpl {
|
|||
new DealsCombatDamageToAPlayerTriggeredAbility(new BecomesMonarchTargetEffect(), false, true),
|
||||
MonarchIsNotSetCondition.instance,
|
||||
"Whenever {this} deals combat damage to a player, if there is no monarch, that player becomes the monarch."
|
||||
));
|
||||
).addHint(MonarchHint.instance));
|
||||
|
||||
// Whenever you become the monarch, convert Starscream.
|
||||
this.addAbility(new BecomesMonarchSourceControllerTriggeredAbility(
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@ package mage.cards.s;
|
|||
import mage.MageInt;
|
||||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.abilities.keyword.VigilanceAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
|
|
@ -27,7 +28,7 @@ public final class StaunchThroneguard extends CardImpl {
|
|||
this.addAbility(VigilanceAbility.getInstance());
|
||||
|
||||
// When Staunch Throneguard enters the battlefield, you become the monarch.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()).addHint(MonarchHint.instance));
|
||||
}
|
||||
|
||||
private StaunchThroneguard(final StaunchThroneguard card) {
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@ import java.util.UUID;
|
|||
import mage.MageInt;
|
||||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.abilities.keyword.DeathtouchAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
|
|
@ -28,7 +29,7 @@ public final class ThornOfTheBlackRose extends CardImpl {
|
|||
// Deathtouch
|
||||
this.addAbility(DeathtouchAbility.getInstance());
|
||||
// When Thorn of the Black Rose enters the battlefield, you become the monarch.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect(), false));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesMonarchSourceEffect()).addHint(MonarchHint.instance));
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@ import mage.abilities.costs.common.SacrificeSourceCost;
|
|||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.costs.mana.GenericManaCost;
|
||||
import mage.abilities.effects.common.BecomesMonarchSourceEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.abilities.mana.ColorlessManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
|
|
@ -30,6 +31,7 @@ public final class ThroneOfTheHighCity extends CardImpl {
|
|||
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesMonarchSourceEffect(), new GenericManaCost(4));
|
||||
ability.addCost(new TapSourceCost());
|
||||
ability.addCost(new SacrificeSourceCost());
|
||||
ability.addHint(MonarchHint.instance);
|
||||
this.addAbility(ability);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@ import mage.MageInt;
|
|||
import mage.abilities.common.BeginningOfEndStepTriggeredAbility;
|
||||
import mage.abilities.condition.common.MonarchIsSourceControllerCondition;
|
||||
import mage.abilities.effects.common.counter.AddCountersSourceEffect;
|
||||
import mage.abilities.hint.common.MonarchHint;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -30,7 +31,8 @@ public final class ThroneWarden extends CardImpl {
|
|||
|
||||
// At the beginning of your end step, if you're the monarch, put a +1/+1 counter on Throne Warden.
|
||||
this.addAbility(new BeginningOfEndStepTriggeredAbility(Zone.BATTLEFIELD, new AddCountersSourceEffect(CounterType.P1P1.createInstance()),
|
||||
TargetController.YOU, MonarchIsSourceControllerCondition.instance, false));
|
||||
TargetController.YOU, MonarchIsSourceControllerCondition.instance, false)
|
||||
.addHint(MonarchHint.instance));
|
||||
}
|
||||
|
||||
private ThroneWarden(final ThroneWarden card) {
|
||||
|
|
|
|||
|
|
@ -0,0 +1,37 @@
|
|||
package mage.abilities.hint.common;
|
||||
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.condition.common.MonarchIsSourceControllerCondition;
|
||||
import mage.abilities.hint.ConditionHint;
|
||||
import mage.abilities.hint.Hint;
|
||||
import mage.game.Game;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
/**
|
||||
* @author JayDi85
|
||||
*/
|
||||
public enum MonarchHint implements Hint {
|
||||
|
||||
instance;
|
||||
private static final ConditionHint hint = new ConditionHint(MonarchIsSourceControllerCondition.instance, "You are The Monarch");
|
||||
|
||||
@Override
|
||||
public String getText(Game game, Ability ability) {
|
||||
String res = hint.getText(game, ability);
|
||||
if (game.getMonarchId() == null) {
|
||||
// no monarch
|
||||
return res + " (no monarch in the game)";
|
||||
} else {
|
||||
// player
|
||||
return res + Optional.ofNullable(game.getPlayer(game.getMonarchId()))
|
||||
.map(p -> " (current monarch: " + p.getName() + ")")
|
||||
.orElse("");
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public Hint copy() {
|
||||
return instance;
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue