"Gimli", "Dwarven Emissary"

This commit is contained in:
marcins78@gmail.com
2013-01-06 02:24:06 +00:00
parent fb194aa623
commit 3fc0c85bb4

View File

@@ -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<ActivateCardAction> 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;
}
}