From 7567fdf731d0adc829131f42fe939ed25571eed3 Mon Sep 17 00:00:00 2001 From: marcins78 Date: Mon, 25 Mar 2013 10:34:40 +0000 Subject: [PATCH] 20_097 --- .../src/main/web/js/gemp-019/set20.js | 2 +- .../lotro/cards/set20/elven/Card20_097.java | 65 +++++++++---------- 2 files changed, 32 insertions(+), 35 deletions(-) diff --git a/gemp-lotr/gemp-lotr-async/src/main/web/js/gemp-019/set20.js b/gemp-lotr/gemp-lotr-async/src/main/web/js/gemp-019/set20.js index 0c5f28990..99cc5277b 100644 --- a/gemp-lotr/gemp-lotr-async/src/main/web/js/gemp-019/set20.js +++ b/gemp-lotr/gemp-lotr-async/src/main/web/js/gemp-019/set20.js @@ -94,7 +94,7 @@ var set20 = { '20_94': 'http://lotrtcg.org/coreset/elven/lorienpatrol.jpg', '20_95': 'http://lotrtcg.org/coreset/elven/mightofthelasthomelyhouse.jpg', '20_96': 'http://lotrtcg.org/coreset/elven/mirrorofgaladrielrop.jpg', - '20_97': 'http://lotrtcg.org/coreset/elven/naryaerop.jpg', + '20_97': 'http://www.lotrtcg.org/coreset/elven/naryaerop(r2).jpg', '20_98': 'http://lotrtcg.org/coreset/elven/nenyaroa.jpg', '20_99': 'http://lotrtcg.org/coreset/elven/orophinls.jpg', '20_100': 'http://lotrtcg.org/coreset/elven/peeringforward.jpg', diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set20/elven/Card20_097.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set20/elven/Card20_097.java index 3df55b636..4b3dbdc4e 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set20/elven/Card20_097.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set20/elven/Card20_097.java @@ -2,19 +2,18 @@ package com.gempukku.lotro.cards.set20.elven; import com.gempukku.lotro.cards.AbstractAttachableFPPossession; import com.gempukku.lotro.cards.PlayConditions; -import com.gempukku.lotro.cards.actions.SubCostToEffectAction; -import com.gempukku.lotro.cards.effects.DiscardCardFromDeckEffect; -import com.gempukku.lotro.cards.effects.RevealTopCardsOfDrawDeckEffect; -import com.gempukku.lotro.cards.effects.choose.ChooseAndExertCharactersEffect; +import com.gempukku.lotro.cards.effects.PreventableEffect; +import com.gempukku.lotro.cards.effects.choose.ChooseAndAddUntilEOPStrengthBonusEffect; +import com.gempukku.lotro.cards.effects.choose.ChooseAndPutCardsFromHandOnTopOfDrawDeckEffect; import com.gempukku.lotro.common.*; import com.gempukku.lotro.filters.Filters; import com.gempukku.lotro.game.PhysicalCard; import com.gempukku.lotro.game.state.LotroGame; +import com.gempukku.lotro.logic.GameUtils; import com.gempukku.lotro.logic.actions.ActivateCardAction; -import com.gempukku.lotro.logic.decisions.YesNoDecision; -import com.gempukku.lotro.logic.effects.ChooseAndHealCharactersEffect; -import com.gempukku.lotro.logic.effects.PlayoutDecisionEffect; +import com.gempukku.lotro.logic.actions.SubAction; import com.gempukku.lotro.logic.timing.Action; +import com.gempukku.lotro.logic.timing.Effect; import java.util.Collections; import java.util.List; @@ -22,11 +21,12 @@ import java.util.List; /** * 0 * •Narya, Elven Ring of Power - * Elven Artifact • Ring + * Artifact • Ring * 1 * Bearer must be Cirdan or Gandalf. - * Maneuver: Exert bearer to reveal the top card of your draw deck. If it is a Free Peoples card, you may discard it - * to heal 2 companions of that card's culture. + * Skirmish: Stack 3 cards from hand on top of your draw deck to make a minion skirmishing an unbound companion strength -3. + * The Shadow player may stack 3 cards on top of his or her draw deck to prevent this. + * http://www.lotrtcg.org/coreset/elven/naryaerop(r2).jpg */ public class Card20_097 extends AbstractAttachableFPPossession { public Card20_097() { @@ -40,34 +40,31 @@ public class Card20_097 extends AbstractAttachableFPPossession { @Override protected List getExtraInPlayPhaseActions(final String playerId, final LotroGame game, PhysicalCard self) { - if (PlayConditions.canUseFPCardDuringPhase(game, Phase.MANEUVER, self) - && PlayConditions.canExert(self, game, Filters.hasAttached(self))) { + if (PlayConditions.canUseFPCardDuringPhase(game, Phase.SKIRMISH, self) + && PlayConditions.hasCardInHand(game, playerId, 3, Filters.any)) { final ActivateCardAction action = new ActivateCardAction(self); action.appendCost( - new ChooseAndExertCharactersEffect(action, playerId, 1, 1, Filters.hasAttached(self))); + new ChooseAndPutCardsFromHandOnTopOfDrawDeckEffect(action, playerId, 3, 3, Filters.any)); action.appendEffect( - new RevealTopCardsOfDrawDeckEffect(self, playerId, 1) { - @Override - protected void cardsRevealed(List revealedCards) { - for (final PhysicalCard revealedCard : revealedCards) { - if (Filters.and(Side.FREE_PEOPLE).accepts(game.getGameState(), game.getModifiersQuerying(), revealedCard)) { - action.appendEffect( - new PlayoutDecisionEffect(playerId, - new YesNoDecision("Do you want to discard that card to heal 2 companions of the card's culture?") { - @Override - protected void yes() { - SubCostToEffectAction subAction = new SubCostToEffectAction(action); - subAction.appendCost( - new DiscardCardFromDeckEffect(revealedCard)); - subAction.appendEffect( - new ChooseAndHealCharactersEffect(action, playerId, 2, 2, CardType.COMPANION, revealedCard.getBlueprint().getCulture())); - game.getActionsEnvironment().addActionToStack(subAction); - } - })); + new PreventableEffect(action, + new ChooseAndAddUntilEOPStrengthBonusEffect(action, self, playerId, -3, CardType.MINION, Filters.inSkirmishAgainst(Filters.unboundCompanion)) { + @Override + public String getText(LotroGame game) { + return "Make a minion skirmishing an unbound companion strength -3"; } - } - } - }); + }, + GameUtils.getOpponents(game, playerId), + new PreventableEffect.PreventionCost() { + @Override + public Effect createPreventionCostForPlayer(SubAction subAction, String playerId) { + return new ChooseAndPutCardsFromHandOnTopOfDrawDeckEffect(action, playerId, 3, 3, Filters.any) { + @Override + public String getText(LotroGame game) { + return "Stack 3 cards from hand on top of your draw deck"; + } + }; + } + })); return Collections.singletonList(action); } return null;