diff --git a/Mage.Sets/src/mage/cards/g/GarrukSavageHerald.java b/Mage.Sets/src/mage/cards/g/GarrukSavageHerald.java index 614653fe34..5d2aaf48a8 100644 --- a/Mage.Sets/src/mage/cards/g/GarrukSavageHerald.java +++ b/Mage.Sets/src/mage/cards/g/GarrukSavageHerald.java @@ -5,6 +5,7 @@ import mage.abilities.LoyaltyAbility; import mage.abilities.common.DamageAsThoughNotBlockedAbility; import mage.abilities.common.PlaneswalkerEntersWithLoyaltyCountersAbility; import mage.abilities.effects.ContinuousEffect; +import mage.abilities.effects.Effect; import mage.abilities.effects.OneShotEffect; import mage.abilities.effects.common.DamageWithPowerFromOneToAnotherTargetEffect; import mage.abilities.effects.common.continuous.GainAbilityControlledEffect; @@ -12,7 +13,12 @@ import mage.cards.Card; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.cards.CardsImpl; -import mage.constants.*; +import mage.constants.CardType; +import mage.constants.Duration; +import mage.constants.Outcome; +import mage.constants.SubType; +import mage.constants.SuperType; +import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.AnotherTargetPredicate; import mage.game.Game; @@ -39,7 +45,7 @@ public final class GarrukSavageHerald extends CardImpl { this.addAbility(new LoyaltyAbility(new GarrukSavageHeraldEffect(), 1)); // −2: Target creature you control deals damage equal to its power to another target creature. - DamageWithPowerFromOneToAnotherTargetEffect effect = new DamageWithPowerFromOneToAnotherTargetEffect(); + Effect effect = new DamageWithPowerFromOneToAnotherTargetEffect(); effect.setText("Target creature you control deals damage equal to its power to another target creature"); Ability minusAbility = new LoyaltyAbility(effect, -2); @@ -47,10 +53,10 @@ public final class GarrukSavageHerald extends CardImpl { controlledCreature.setTargetTag(1); minusAbility.addTarget(controlledCreature); - FilterCreaturePermanent filter = new FilterCreaturePermanent("Another creature: damage dealt to"); + FilterCreaturePermanent filter = new FilterCreaturePermanent(); filter.add(new AnotherTargetPredicate(2)); TargetCreaturePermanent anotherTargetCreature = new TargetCreaturePermanent(filter); - minusAbility.addTarget(anotherTargetCreature); + minusAbility.addTarget(anotherTargetCreature.withChooseHint("another creature to deal damage to")); this.addAbility(minusAbility); diff --git a/Mage.Sets/src/mage/cards/l/LilianaDeathMage.java b/Mage.Sets/src/mage/cards/l/LilianaDeathMage.java index 45c189ded9..0e1d8341ce 100644 --- a/Mage.Sets/src/mage/cards/l/LilianaDeathMage.java +++ b/Mage.Sets/src/mage/cards/l/LilianaDeathMage.java @@ -9,7 +9,11 @@ import mage.abilities.effects.common.LoseLifeTargetControllerEffect; import mage.cards.Card; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.constants.*; +import mage.constants.CardType; +import mage.constants.Outcome; +import mage.constants.SubType; +import mage.constants.SuperType; +import mage.constants.Zone; import mage.filter.StaticFilters; import mage.game.Game; import mage.players.Player; @@ -78,7 +82,7 @@ class LilianaDeathMagePlusEffect extends OneShotEffect { @Override public boolean apply(Game game, Ability source) { Player player = game.getPlayer(source.getControllerId()); - if (player == null || !player.chooseUse(Outcome.Benefit, "Return a creature card from your graveyard to your hand?", source, game)) { + if (player == null) { return false; } Card card = game.getCard(source.getTargets().get(0).getFirstTarget()); diff --git a/Mage.Sets/src/mage/cards/n/Necromentia.java b/Mage.Sets/src/mage/cards/n/Necromentia.java index 985e0fc22e..888d90311d 100644 --- a/Mage.Sets/src/mage/cards/n/Necromentia.java +++ b/Mage.Sets/src/mage/cards/n/Necromentia.java @@ -20,6 +20,7 @@ import mage.target.TargetCard; import mage.target.common.TargetCardInLibrary; import mage.target.common.TargetOpponent; +import java.util.HashSet; import java.util.UUID; /** @@ -94,6 +95,8 @@ class NecromentiaEffect extends OneShotEffect { numberOfCardsExiledFromHand = target.getTargets().size(); controller.moveCards(new CardsImpl(target.getTargets()), Zone.EXILED, source, game); } + } else { + targetPlayer.revealCards(targetPlayer.getName() + "'s Hand", targetPlayer.getHand(), game); } // cards in Library @@ -106,6 +109,8 @@ class NecromentiaEffect extends OneShotEffect { if (controller.choose(Outcome.Exile, cardsInLibrary, targetLib, game)) { controller.moveCards(new CardsImpl(targetLib.getTargets()), Zone.EXILED, source, game); } + } else { + targetPlayer.revealCards(targetPlayer.getName() + "'s Library", new CardsImpl(new HashSet<>(targetPlayer.getLibrary().getCards(game))), game); } targetPlayer.shuffleLibrary(source, game); diff --git a/Mage.Sets/src/mage/cards/s/SanctumOfAll.java b/Mage.Sets/src/mage/cards/s/SanctumOfAll.java index ccb8c70cf7..97386229b2 100644 --- a/Mage.Sets/src/mage/cards/s/SanctumOfAll.java +++ b/Mage.Sets/src/mage/cards/s/SanctumOfAll.java @@ -97,9 +97,11 @@ class SanctumOfAllTriggerEffect extends ReplacementEffectImpl { // Only trigger while you control six or more Shrines int numShrines = SanctumOfAll.count.calculate(game, source, this); if (numShrines >= 6) { - // Only for triggers of Shrines + // Only for triggers of other Shrines Permanent permanent = game.getPermanent(event.getSourceId()); - return permanent != null && permanent.hasSubtype(SubType.SHRINE, game); + return permanent != null + && !permanent.getId().equals(source.getSourceId()) + && permanent.hasSubtype(SubType.SHRINE, game); } } return false;