From 92de6b17f74b58fdc620b44acf8221c1ddec89bb Mon Sep 17 00:00:00 2001 From: ArsenalNut Date: Mon, 21 Jan 2013 05:25:16 +0000 Subject: [PATCH] Activating player is not always the player revealing cards. Added parameter to set number of cards to reveal. --- .../card/abilityfactory/effects/RevealEffect.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/main/java/forge/card/abilityfactory/effects/RevealEffect.java b/src/main/java/forge/card/abilityfactory/effects/RevealEffect.java index 0b23cd2e900..5b1c510c6f2 100644 --- a/src/main/java/forge/card/abilityfactory/effects/RevealEffect.java +++ b/src/main/java/forge/card/abilityfactory/effects/RevealEffect.java @@ -6,6 +6,7 @@ import java.util.List; import forge.Card; import forge.CardLists; import forge.CardUtil; +import forge.card.abilityfactory.AbilityFactory; import forge.card.spellability.SpellAbility; import forge.card.spellability.Target; import forge.game.player.Player; @@ -38,8 +39,13 @@ public class RevealEffect extends RevealEffectBase { if (sa.hasParam("AnyNumber")) { max = valid.size(); } - revealed.addAll(getRevealedList(sa.getActivatingPlayer(), valid, max, anyNumber)); - if (sa.getActivatingPlayer().isComputer()) { + else if (sa.hasParam("NumCards")) { + max = Math.min(valid.size(), AbilityFactory.calculateAmount(sa.getSourceCard(), sa.getParam("NumCards"), sa)); + } + //revealed.addAll(getRevealedList(sa.getActivatingPlayer(), valid, max, anyNumber)); + revealed.addAll(getRevealedList(p, valid, max, anyNumber)); + //if (sa.getActivatingPlayer().isComputer()) { + if (p.isComputer()) { GuiChoose.oneOrNone("Revealed card(s)", revealed); } }