diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/effects/choose/ChooseCardsFromDeckEffect.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/effects/choose/ChooseCardsFromDeckEffect.java index 65ad436e0..1da3dbfb9 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/effects/choose/ChooseCardsFromDeckEffect.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/effects/choose/ChooseCardsFromDeckEffect.java @@ -59,23 +59,26 @@ public abstract class ChooseCardsFromDeckEffect extends AbstractEffect { } else if (cards.size() == minimum) { cardsSelected(game, cards); } else { - if (showAll) { - game.getUserFeedback().sendAwaitingDecision(_playerId, - new ArbitraryCardsSelectionDecision(1, "Choose cards from deck", game.getGameState().getDeck(_deckId), new LinkedList<>(cards), minimum, _maximum) { - @Override - public void decisionMade(String result) throws DecisionResultInvalidException { - cardsSelected(game, getSelectedCardsByResponse(result)); + game.getUserFeedback().sendAwaitingDecision(_playerId, + new ArbitraryCardsSelectionDecision(1, "Choose cards from deck", new LinkedList<>(cards), minimum, _maximum) { + @Override + public void decisionMade(String result) throws DecisionResultInvalidException { + var actualSelection = getSelectedCardsByResponse(result); + if (showAll) { + game.getUserFeedback().sendAwaitingDecision(_playerId, + new ArbitraryCardsSelectionDecision(2, "You may inspect the contents of your deck while retrieving cards", game.getGameState().getDeck(_deckId), new LinkedList<>(), 0, 0) { + @Override + public void decisionMade(String result2) throws DecisionResultInvalidException { + cardsSelected(game, actualSelection); + } + }); } - }); - } else { - game.getUserFeedback().sendAwaitingDecision(_playerId, - new ArbitraryCardsSelectionDecision(1, "Choose cards from deck", new LinkedList<>(cards), minimum, _maximum) { - @Override - public void decisionMade(String result) throws DecisionResultInvalidException { - cardsSelected(game, getSelectedCardsByResponse(result)); + else { + cardsSelected(game, actualSelection); } - }); - } + } + }); + } return new FullEffectResult(success); diff --git a/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/official/set01/Card_01_087_Tests.java b/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/official/set01/Card_01_087_Tests.java index d7313514a..d9a45e9db 100644 --- a/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/official/set01/Card_01_087_Tests.java +++ b/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/official/set01/Card_01_087_Tests.java @@ -20,6 +20,7 @@ public class Card_01_087_Tests put("late", "1_87"); put("gandalf", "1_72"); put("bb", "1_70"); + put("filler", "1_75"); }}, GenericCardTestHelper.FellowshipSites, GenericCardTestHelper.FOTRFrodo, @@ -78,6 +79,9 @@ public class Card_01_087_Tests assertEquals(2, scn.GetFreepsCardChoiceCount()); scn.FreepsChooseCardBPFromSelection(gandalf); + assertTrue(scn.FreepsDecisionAvailable("You may inspect the contents of your deck while retrieving cards")); + scn.FreepsDismissRevealedCards(); + assertEquals(Zone.FREE_CHARACTERS, gandalf.getZone()); assertEquals(Zone.DECK, bb.getZone()); } @@ -103,6 +107,8 @@ public class Card_01_087_Tests assertTrue(scn.FreepsDecisionAvailable("Choose cards from deck")); assertEquals(2, scn.GetFreepsCardChoiceCount()); scn.FreepsChooseCardBPFromSelection(bb); + assertTrue(scn.FreepsDecisionAvailable("You may inspect the contents of your deck while retrieving cards")); + scn.FreepsDismissRevealedCards(); assertEquals(Zone.DECK, gandalf.getZone()); assertEquals(Zone.SUPPORT, bb.getZone()); diff --git a/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/official/set09/Card_09_001_Tests.java b/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/official/set09/Card_09_001_Tests.java index 2f827be85..f00968556 100644 --- a/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/official/set09/Card_09_001_Tests.java +++ b/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/official/set09/Card_09_001_Tests.java @@ -1,10 +1,11 @@ package com.gempukku.lotro.cards.official.set09; import com.gempukku.lotro.cards.GenericCardTestHelper; -import com.gempukku.lotro.common.*; +import com.gempukku.lotro.common.CardType; +import com.gempukku.lotro.common.Phase; +import com.gempukku.lotro.common.Zone; import com.gempukku.lotro.game.AbstractActionProxy; import com.gempukku.lotro.game.CardNotFoundException; -import com.gempukku.lotro.game.PhysicalCardImpl; import com.gempukku.lotro.game.state.LotroGame; import com.gempukku.lotro.logic.actions.ActivateCardAction; import com.gempukku.lotro.logic.decisions.DecisionResultInvalidException; @@ -224,6 +225,7 @@ public class Card_09_001_Tests scn.FreepsUseCardAction(ring); assertEquals(2, scn.FreepsGetSelectableCount()); scn.FreepsChooseCardBPFromSelection(ring1); + scn.FreepsDismissRevealedCards(); assertEquals(3, scn.GetBurdens()); assertEquals(Zone.ATTACHED, ring1.getZone()); diff --git a/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/official/set11/Card_11_235_Tests.java b/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/official/set11/Card_11_235_Tests.java index ef1f83d6a..2d47a4ce3 100644 --- a/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/official/set11/Card_11_235_Tests.java +++ b/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/official/set11/Card_11_235_Tests.java @@ -100,6 +100,7 @@ public class Card_11_235_Tests assertEquals(Zone.DECK, dontlook.getZone()); assertEquals(Zone.DECK, smeagol.getZone()); scn.FreepsChooseCardBPFromSelection(dontlook); + scn.FreepsDismissRevealedCards(); assertEquals(Zone.SUPPORT, dontlook.getZone()); assertEquals(Zone.DECK, smeagol.getZone()); diff --git a/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/official/set18/Card_18_132_Tests.java b/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/official/set18/Card_18_132_Tests.java index 498b4de03..83d632d81 100644 --- a/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/official/set18/Card_18_132_Tests.java +++ b/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/official/set18/Card_18_132_Tests.java @@ -184,6 +184,7 @@ public class Card_18_132_Tests assertEquals(2, scn.ShadowGetSelectableCount()); // orc + cantea, but not TWK scn.ShadowChooseCardBPFromSelection(orc); + scn.ShadowDismissRevealedCards(); assertEquals(Zone.SHADOW_CHARACTERS, orc.getZone()); } diff --git a/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/unofficial/pc/errata/set02/Card_02_045_ErrataTests.java b/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/unofficial/pc/errata/set02/Card_02_045_ErrataTests.java index 250b21ebb..b90a06268 100644 --- a/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/unofficial/pc/errata/set02/Card_02_045_ErrataTests.java +++ b/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/unofficial/pc/errata/set02/Card_02_045_ErrataTests.java @@ -117,6 +117,7 @@ public class Card_02_045_ErrataTests scn.ShadowAcceptOptionalTrigger(); assertEquals(3, scn.GetShadowCardChoiceCount()); scn.ShadowChooseCardBPFromSelection(sauron); + scn.ShadowDismissRevealedCards(); //Decline the prevention scn.FreepsChooseNo(); assertEquals(Zone.DISCARD, attention.getZone()); @@ -158,6 +159,7 @@ public class Card_02_045_ErrataTests //Accept the prevention assertEquals(7, scn.GetFreepsDeckCount()); assertEquals(0, scn.GetFreepsDiscardCount()); + scn.ShadowDismissRevealedCards(); scn.FreepsChooseYes(); assertEquals(1, scn.GetFreepsDeckCount()); assertEquals(6, scn.GetFreepsDiscardCount()); diff --git a/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/unofficial/pc/errata/set18/Card_18_082_ErrataTests.java b/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/unofficial/pc/errata/set18/Card_18_082_ErrataTests.java index eb5260da3..81f23434a 100644 --- a/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/unofficial/pc/errata/set18/Card_18_082_ErrataTests.java +++ b/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/unofficial/pc/errata/set18/Card_18_082_ErrataTests.java @@ -139,6 +139,7 @@ public class Card_18_082_ErrataTests assertEquals(Zone.DECK, chaff3.getZone()); assertEquals(Zone.DECK, chaff4.getZone()); scn.ShadowChooseCardBPFromSelection(chaff3, chaff4); + scn.ShadowDismissRevealedCards(); assertEquals(Zone.DISCARD, chaff3.getZone()); assertEquals(Zone.DISCARD, chaff4.getZone()); } diff --git a/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/unofficial/pc/errata/set18/Card_18_096_ErrataTests.java b/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/unofficial/pc/errata/set18/Card_18_096_ErrataTests.java index 65f08377b..a2d4d3cb2 100644 --- a/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/unofficial/pc/errata/set18/Card_18_096_ErrataTests.java +++ b/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/unofficial/pc/errata/set18/Card_18_096_ErrataTests.java @@ -102,6 +102,7 @@ public class Card_18_096_ErrataTests assertEquals(1, scn.GetWoundsOn(eomer)); scn.FreepsChooseCardBPFromSelection(worker); + scn.FreepsDismissRevealedCards(); assertEquals(Zone.SUPPORT, worker.getZone()); } diff --git a/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/unofficial/pc/vsets/set_v01/Card_V1_013_Tests.java b/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/unofficial/pc/vsets/set_v01/Card_V1_013_Tests.java index cf917c051..2ae70aa14 100644 --- a/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/unofficial/pc/vsets/set_v01/Card_V1_013_Tests.java +++ b/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/unofficial/pc/vsets/set_v01/Card_V1_013_Tests.java @@ -96,6 +96,7 @@ public class Card_V1_013_Tests // Choices available should be 1 Elrond, 1 Galadriel, 1 Orophin assertEquals(3, scn.GetFreepsCardChoiceCount()); scn.FreepsChooseCardBPFromSelection(scn.GetFreepsCard("elrond")); + scn.FreepsDismissRevealedCards(); assertTrue(scn.FreepsDecisionAvailable("Would you like to pay")); scn.FreepsChooseYes(); @@ -128,6 +129,7 @@ public class Card_V1_013_Tests // Choices available should be 1 Elrond, 1 Galadriel, 1 Orophin assertEquals(3, scn.GetFreepsCardChoiceCount()); scn.FreepsChooseCardBPFromSelection(scn.GetFreepsCard("elrond")); + scn.FreepsDismissRevealedCards(); assertTrue(scn.FreepsDecisionAvailable("Would you like to pay")); scn.FreepsChooseNo(); diff --git a/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/unofficial/pc/vsets/set_v01/Card_V1_037_Tests.java b/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/unofficial/pc/vsets/set_v01/Card_V1_037_Tests.java index 951143b0e..e794a20c1 100644 --- a/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/unofficial/pc/vsets/set_v01/Card_V1_037_Tests.java +++ b/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/unofficial/pc/vsets/set_v01/Card_V1_037_Tests.java @@ -98,6 +98,7 @@ public class Card_V1_037_Tests scn.ShadowPlayCard(fell2); scn.ShadowChooseCardBPFromSelection(blade); + scn.ShadowDismissRevealedCards(); assertEquals(Zone.ATTACHED, blade.getZone()); assertEquals(nazgul, blade.getAttachedTo()); diff --git a/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/unofficial/pc/vsets/set_v01/Card_V1_050_Tests.java b/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/unofficial/pc/vsets/set_v01/Card_V1_050_Tests.java index 82ea53c95..65ae1398d 100644 --- a/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/unofficial/pc/vsets/set_v01/Card_V1_050_Tests.java +++ b/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/unofficial/pc/vsets/set_v01/Card_V1_050_Tests.java @@ -130,12 +130,14 @@ public class Card_V1_050_Tests assertEquals(3, scn.GetFreepsCardChoiceCount()); // coat, sting, and phial scn.FreepsChooseCardBPFromSelection(sting); + scn.FreepsDismissRevealedCards(); assertEquals(Zone.ATTACHED, sting.getZone()); assertEquals(frodo, sting.getAttachedTo()); assertTrue(scn.FreepsDecisionAvailable("Choose cards from deck")); assertEquals(2, scn.GetFreepsCardChoiceCount()); scn.FreepsChooseCardBPFromSelection(phial); + scn.FreepsDismissRevealedCards(); assertEquals(Zone.ATTACHED, phial.getZone()); assertEquals(frodo, phial.getAttachedTo()); diff --git a/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/unofficial/pc/vsets/set_v01/Card_V1_057_Tests.java b/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/unofficial/pc/vsets/set_v01/Card_V1_057_Tests.java index 8c2c6fd3d..666b1d2b5 100644 --- a/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/unofficial/pc/vsets/set_v01/Card_V1_057_Tests.java +++ b/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/unofficial/pc/vsets/set_v01/Card_V1_057_Tests.java @@ -91,6 +91,7 @@ public class Card_V1_057_Tests scn.FreepsAcceptOptionalTrigger(); assertEquals(1, scn.GetWoundsOn(frodo)); scn.FreepsChooseCardBPFromSelection(cond); + scn.FreepsDismissRevealedCards(); assertEquals(Zone.ATTACHED, cond.getZone()); } diff --git a/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/unofficial/pc/vsets/set_v02/Card_V2_036_Tests.java b/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/unofficial/pc/vsets/set_v02/Card_V2_036_Tests.java index 713f913fb..38094d65e 100644 --- a/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/unofficial/pc/vsets/set_v02/Card_V2_036_Tests.java +++ b/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/unofficial/pc/vsets/set_v02/Card_V2_036_Tests.java @@ -3,7 +3,6 @@ package com.gempukku.lotro.cards.unofficial.pc.vsets.set_v02; import com.gempukku.lotro.cards.GenericCardTestHelper; import com.gempukku.lotro.common.*; import com.gempukku.lotro.game.CardNotFoundException; -import com.gempukku.lotro.game.PhysicalCardImpl; import com.gempukku.lotro.logic.decisions.DecisionResultInvalidException; import org.junit.Test; @@ -133,6 +132,7 @@ public class Card_V2_036_Tests assertEquals(3, scn.ShadowGetSelectableCount()); assertEquals(Zone.DECK, warg1.getZone()); scn.ShadowChooseCardBPFromSelection(warg1); + scn.ShadowDismissRevealedCards(); assertEquals(Zone.STACKED, warg1.getZone()); assertSame(pit, warg1.getStackedOn()); @@ -143,6 +143,7 @@ public class Card_V2_036_Tests assertEquals(2, scn.ShadowGetSelectableCount()); assertEquals(Zone.DECK, warg2.getZone()); scn.ShadowChooseCardBPFromSelection(warg2); + scn.ShadowDismissRevealedCards(); assertEquals(Zone.STACKED, warg2.getZone()); assertSame(pit, warg2.getStackedOn()); @@ -177,6 +178,7 @@ public class Card_V2_036_Tests assertEquals(1, scn.ShadowGetSelectableCount()); assertEquals(Zone.DECK, warg1.getZone()); scn.ShadowChooseCardBPFromSelection(warg1); + scn.ShadowDismissRevealedCards(); assertEquals(Zone.STACKED, warg1.getZone()); assertSame(pit, warg1.getStackedOn());