From bd9816ad29e1b68a4597bf0f132f2c66b7da95ea Mon Sep 17 00:00:00 2001 From: "marcins78@gmail.com" Date: Fri, 11 Nov 2011 16:22:13 +0000 Subject: [PATCH] "On Your Doorstep" --- .../lotro/cards/set8/gandalf/Card8_019.java | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set8/gandalf/Card8_019.java diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set8/gandalf/Card8_019.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set8/gandalf/Card8_019.java new file mode 100644 index 000000000..884b2f3c7 --- /dev/null +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set8/gandalf/Card8_019.java @@ -0,0 +1,51 @@ +package com.gempukku.lotro.cards.set8.gandalf; + +import com.gempukku.lotro.cards.AbstractEvent; +import com.gempukku.lotro.cards.PlayConditions; +import com.gempukku.lotro.cards.actions.PlayEventAction; +import com.gempukku.lotro.cards.effects.choose.ChooseAndExertCharactersEffect; +import com.gempukku.lotro.cards.effects.choose.ChooseAndPutCardFromDiscardOnTopOfDeckEffect; +import com.gempukku.lotro.common.CardType; +import com.gempukku.lotro.common.Culture; +import com.gempukku.lotro.common.Phase; +import com.gempukku.lotro.common.Side; +import com.gempukku.lotro.filters.Filters; +import com.gempukku.lotro.game.PhysicalCard; +import com.gempukku.lotro.game.state.LotroGame; + +/** + * Set: Siege of Gondor + * Side: Free + * Culture: Gandalf + * Twilight Cost: 1 + * Type: Event • Fellowship + * Game Text: Spot Gandalf and exert a companion to place a card of that companion’s culture from your discard pile on + * top of your draw deck. + */ +public class Card8_019 extends AbstractEvent { + public Card8_019() { + super(Side.FREE_PEOPLE, 1, Culture.GANDALF, "On Your Doorstep", Phase.FELLOWSHIP); + } + + @Override + public boolean checkPlayRequirements(String playerId, LotroGame game, PhysicalCard self, int twilightModifier, boolean ignoreRoamingPenalty) { + return super.checkPlayRequirements(playerId, game, self, twilightModifier, ignoreRoamingPenalty) + && PlayConditions.canSpot(game, Filters.gandalf) + && PlayConditions.canExert(self, game, CardType.COMPANION); + } + + @Override + public PlayEventAction getPlayCardAction(final String playerId, LotroGame game, PhysicalCard self, int twilightModifier, boolean ignoreRoamingPenalty) { + final PlayEventAction action = new PlayEventAction(self); + action.appendCost( + new ChooseAndExertCharactersEffect(action, playerId, 1, 1, CardType.COMPANION) { + @Override + protected void forEachCardExertedCallback(PhysicalCard character) { + Culture culture = character.getBlueprint().getCulture(); + action.appendEffect( + new ChooseAndPutCardFromDiscardOnTopOfDeckEffect(action, playerId, 1, 1, culture)); + } + }); + return action; + } +}