From ae0cdcd5c40b21b18ce5edcc058ba96046fd695a Mon Sep 17 00:00:00 2001 From: Northmoc Date: Sun, 1 May 2022 20:43:02 -0400 Subject: [PATCH] PeekAndRevealEffect resolve() tweaks --- .../game/ability/effects/PeekAndRevealEffect.java | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/forge-game/src/main/java/forge/game/ability/effects/PeekAndRevealEffect.java b/forge-game/src/main/java/forge/game/ability/effects/PeekAndRevealEffect.java index 9dd905e5bc4..a44fcf2841a 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/PeekAndRevealEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/PeekAndRevealEffect.java @@ -55,11 +55,12 @@ public class PeekAndRevealEffect extends SpellAbilityEffect { final Card source = sa.getHostCard(); final boolean rememberRevealed = sa.hasParam("RememberRevealed"); final boolean imprintRevealed = sa.hasParam("ImprintRevealed"); + final boolean noPeek = sa.hasParam("NoPeek"); String revealValid = sa.getParamOrDefault("RevealValid", "Card"); String peekAmount = sa.getParamOrDefault("PeekAmount", "1"); int numPeek = AbilityUtils.calculateAmount(source, peekAmount, sa); - List libraryPlayers = AbilityUtils.getDefinedPlayers(source, sa.getParam("Defined"), sa); + List libraryPlayers = getDefinedPlayersOrTargeted(sa); Player peekingPlayer = sa.getActivatingPlayer(); for (Player libraryToPeek : libraryPlayers) { @@ -74,17 +75,19 @@ public class PeekAndRevealEffect extends SpellAbilityEffect { CardCollectionView revealableCards = CardLists.getValidCards(peekCards, revealValid, sa.getActivatingPlayer(), source, sa); boolean doReveal = !sa.hasParam("NoReveal") && !revealableCards.isEmpty(); - if (!sa.hasParam("NoPeek")) { + if (!noPeek) { peekingPlayer.getController().reveal(peekCards, ZoneType.Library, libraryToPeek, CardTranslation.getTranslatedName(source.getName()) + " - " + - Localizer.getInstance().getMessage("lblRevealingCardFrom")); + Localizer.getInstance().getMessage("lblLookingCardFrom")); } if (doReveal && sa.hasParam("RevealOptional")) doReveal = peekingPlayer.getController().confirmAction(sa, null, Localizer.getInstance().getMessage("lblRevealCardToOtherPlayers")); if (doReveal) { - peekingPlayer.getGame().getAction().reveal(revealableCards, peekingPlayer); + peekingPlayer.getGame().getAction().reveal(revealableCards, ZoneType.Library, libraryToPeek, !noPeek, + CardTranslation.getTranslatedName(source.getName()) + " - " + + Localizer.getInstance().getMessage("lblRevealingCardFrom")); if (rememberRevealed) { Map cachedMap = Maps.newHashMap();