"Gloin", "Gimli's Father"

This commit is contained in:
marcins78@gmail.com
2013-01-06 23:22:10 +00:00
parent e5054f7430
commit 977dbd4a92

View File

@@ -0,0 +1,65 @@
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.SelfExertEffect;
import com.gempukku.lotro.cards.effects.choose.ChooseAndAddUntilEOPStrengthBonusEffect;
import com.gempukku.lotro.cards.modifiers.evaluator.CardMatchesEvaluator;
import com.gempukku.lotro.common.Culture;
import com.gempukku.lotro.common.Keyword;
import com.gempukku.lotro.common.Phase;
import com.gempukku.lotro.common.Race;
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.modifiers.Modifier;
import com.gempukku.lotro.logic.modifiers.ModifiersQuerying;
import com.gempukku.lotro.logic.modifiers.SpotCondition;
import com.gempukku.lotro.logic.modifiers.StrengthModifier;
import java.util.Collections;
import java.util.List;
/**
* 3
* •Gloin, Gimli's Father
* Dwarven Companion • Dwarf
* 5 4 6
* Damage +1.
* While you can spot Gimli, Gloin is strength +2 and twilight cost -1.
* Skirmish: Exert Gloin to make another Dwarf strength +2 (or strength +3 if that Dwarf is Gimli).
*/
public class Card20_057 extends AbstractCompanion {
public Card20_057() {
super(3, 5, 4, 6, Culture.DWARVEN, Race.DWARF, null, "Gloin", "Gimli's Father", true);
addKeyword(Keyword.DAMAGE, 1);
}
@Override
public int getTwilightCostModifier(GameState gameState, ModifiersQuerying modifiersQuerying, PhysicalCard self) {
if (Filters.canSpot(gameState, modifiersQuerying, Filters.gimli))
return -1;
return 0;
}
@Override
public Modifier getAlwaysOnModifier(PhysicalCard self) {
return new StrengthModifier(self, self, new SpotCondition(Filters.gimli), 2);
}
@Override
protected List<ActivateCardAction> getExtraInPlayPhaseActions(String playerId, LotroGame game, PhysicalCard self) {
if (PlayConditions.canUseFPCardDuringPhase(game, Phase.SKIRMISH, self)
&& PlayConditions.canSelfExert(self, game)) {
ActivateCardAction action = new ActivateCardAction(self);
action.appendCost(
new SelfExertEffect(action, self));
action.appendEffect(
new ChooseAndAddUntilEOPStrengthBonusEffect(action, self, playerId, new CardMatchesEvaluator(2, 3, Filters.gimli), Filters.not(self), Race.DWARF));
return Collections.singletonList(action);
}
return null;
}
}