diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set20/dwarven/Card20_053.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set20/dwarven/Card20_053.java new file mode 100644 index 000000000..4a2dc8b4e --- /dev/null +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set20/dwarven/Card20_053.java @@ -0,0 +1,62 @@ +package com.gempukku.lotro.cards.set20.dwarven; + +import com.gempukku.lotro.cards.AbstractCompanion; +import com.gempukku.lotro.cards.PlayConditions; +import com.gempukku.lotro.cards.effects.choose.ChooseAndPutCardFromDiscardIntoHandEffect; +import com.gempukku.lotro.cards.effects.choose.ChooseAndStackCardsFromHandEffect; +import com.gempukku.lotro.common.*; +import com.gempukku.lotro.filters.Filters; +import com.gempukku.lotro.game.PhysicalCard; +import com.gempukku.lotro.game.state.GameState; +import com.gempukku.lotro.game.state.LotroGame; +import com.gempukku.lotro.logic.actions.ActivateCardAction; +import com.gempukku.lotro.logic.effects.ChooseActiveCardEffect; +import com.gempukku.lotro.logic.modifiers.ModifiersQuerying; + +import java.util.Collections; +import java.util.List; + +/** + * 3 + * Gimli, Dwarven Emissary + * Dwarven Companion • Dwarf + * 6 4 7 + * Damage +1. + * While in your starting fellowship, Gimli's twilight cost is -1. + * Fellowship: Stack a card from hand on a [Dwarven] support area condition to take a [Dwarven] event from + * your discard pile into hand. + */ +public class Card20_053 extends AbstractCompanion { + public Card20_053() { + super(3, 6, 4, 7, Culture.DWARVEN, Race.DWARF, null, "Gimli", "Dwarven Emissary", true); + addKeyword(Keyword.DAMAGE, 1); + } + + @Override + public int getTwilightCostModifier(GameState gameState, ModifiersQuerying modifiersQuerying, PhysicalCard self) { + if (gameState.getCurrentPhase() == Phase.PLAY_STARTING_FELLOWSHIP) + return -1; + return 0; + } + + @Override + protected List getExtraInPlayPhaseActions(final String playerId, LotroGame game, PhysicalCard self) { + if (PlayConditions.canUseFPCardDuringPhase(game, Phase.FELLOWSHIP, self) + && PlayConditions.hasCardInHand(game, playerId, 1, Filters.any) + && PlayConditions.canSpot(game, Culture.DWARVEN, Zone.SUPPORT, CardType.CONDITION)) { + final ActivateCardAction action = new ActivateCardAction(self); + action.appendCost( + new ChooseActiveCardEffect(self, playerId, "Choose a DWARVEN condition in your support area", Culture.DWARVEN, Zone.SUPPORT, CardType.CONDITION) { + @Override + protected void cardSelected(LotroGame game, PhysicalCard card) { + action.appendCost( + new ChooseAndStackCardsFromHandEffect(action, playerId, 1, 1, card, Filters.any)); + } + }); + action.appendEffect( + new ChooseAndPutCardFromDiscardIntoHandEffect(action, playerId, 1, 1, Culture.DWARVEN, CardType.EVENT)); + return Collections.singletonList(action); + } + return null; + } +}