diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/appender/ExchangeCardsInHandWithCardsInDeadPile.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/appender/ExchangeCardsInHandWithCardsInDeadPile.java index f6df60969..716df2f2e 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/appender/ExchangeCardsInHandWithCardsInDeadPile.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/appender/ExchangeCardsInHandWithCardsInDeadPile.java @@ -50,6 +50,13 @@ public class ExchangeCardsInHandWithCardsInDeadPile implements EffectAppenderPro return new AbstractEffect() { @Override protected FullEffectResult playEffectReturningResult(LotroGame game) { + + int hand = countHand.getEvaluator(actionContext).evaluateExpression(game, null); + if(handCards.size() < hand) { + game.getGameState().sendMessage(performingPlayer + " did not have " + hand + " card in hand to exchange."); + return new FullEffectResult(false); + } + Set cardsToRemove = new HashSet<>(); cardsToRemove.addAll(handCards); cardsToRemove.addAll(deadPileCards); @@ -66,7 +73,8 @@ public class ExchangeCardsInHandWithCardsInDeadPile implements EffectAppenderPro @Override public boolean isPlayableInFull(LotroGame game) { - return true; + int hand = countHand.getEvaluator(actionContext).evaluateExpression(game, null); + return handCards.size() >= hand; } }; } diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/appender/ExchangeCardsInHandWithCardsInDiscard.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/appender/ExchangeCardsInHandWithCardsInDiscard.java index 03410be00..dd3b0f3f6 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/appender/ExchangeCardsInHandWithCardsInDiscard.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/appender/ExchangeCardsInHandWithCardsInDiscard.java @@ -48,6 +48,12 @@ public class ExchangeCardsInHandWithCardsInDiscard implements EffectAppenderProd return new AbstractEffect() { @Override protected FullEffectResult playEffectReturningResult(LotroGame game) { + int hand = countHand.getEvaluator(actionContext).evaluateExpression(game, null); + if(handCards.size() < hand) { + game.getGameState().sendMessage(performingPlayer + " did not have " + hand + " card in hand to exchange."); + return new FullEffectResult(false); + } + Set cardsToRemove = new HashSet<>(); cardsToRemove.addAll(handCards); cardsToRemove.addAll(discardCards); @@ -64,7 +70,8 @@ public class ExchangeCardsInHandWithCardsInDiscard implements EffectAppenderProd @Override public boolean isPlayableInFull(LotroGame game) { - return true; + int hand = countHand.getEvaluator(actionContext).evaluateExpression(game, null); + return handCards.size() >= hand; } }; } diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/appender/ExchangeCardsInHandWithCardsStacked.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/appender/ExchangeCardsInHandWithCardsStacked.java index 90e957392..4db6c7533 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/appender/ExchangeCardsInHandWithCardsStacked.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/appender/ExchangeCardsInHandWithCardsStacked.java @@ -53,6 +53,12 @@ public class ExchangeCardsInHandWithCardsStacked implements EffectAppenderProduc return new AbstractEffect() { @Override protected FullEffectResult playEffectReturningResult(LotroGame game) { + int hand = countHand.getEvaluator(actionContext).evaluateExpression(game, null); + if(handCards.size() < hand) { + game.getGameState().sendMessage(performingPlayer + " did not have " + hand + " card in hand to exchange."); + return new FullEffectResult(false); + } + Set cardsToRemove = new HashSet<>(); cardsToRemove.addAll(handCards); cardsToRemove.addAll(stackedCards); @@ -69,7 +75,8 @@ public class ExchangeCardsInHandWithCardsStacked implements EffectAppenderProduc @Override public boolean isPlayableInFull(LotroGame game) { - return true; + int hand = countHand.getEvaluator(actionContext).evaluateExpression(game, null); + return handCards.size() >= hand; } }; }