From d4ae6dc887d68c5a61d4b3edfaf4e953befb4b24 Mon Sep 17 00:00:00 2001 From: "marcins78@gmail.com" Date: Thu, 27 Oct 2011 10:12:32 +0000 Subject: [PATCH] "Battle Tested" --- .../evaluator/ConditionEvaluator.java | 26 ++++++++++++++ .../lotro/cards/set7/dwarven/Card7_003.java | 34 +++++++++++++++++++ 2 files changed, 60 insertions(+) create mode 100644 gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/modifiers/evaluator/ConditionEvaluator.java create mode 100644 gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set7/dwarven/Card7_003.java diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/modifiers/evaluator/ConditionEvaluator.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/modifiers/evaluator/ConditionEvaluator.java new file mode 100644 index 000000000..a758b052e --- /dev/null +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/modifiers/evaluator/ConditionEvaluator.java @@ -0,0 +1,26 @@ +package com.gempukku.lotro.cards.modifiers.evaluator; + +import com.gempukku.lotro.game.PhysicalCard; +import com.gempukku.lotro.game.state.GameState; +import com.gempukku.lotro.logic.modifiers.Condition; +import com.gempukku.lotro.logic.modifiers.ModifiersQuerying; +import com.gempukku.lotro.logic.modifiers.evaluator.Evaluator; + +public class ConditionEvaluator implements Evaluator { + private int _default; + private int _conditionFullfilled; + private Condition _condition; + + public ConditionEvaluator(int aDefault, int conditionFullfilled, Condition condition) { + _default = aDefault; + _conditionFullfilled = conditionFullfilled; + _condition = condition; + } + + @Override + public int evaluateExpression(GameState gameState, ModifiersQuerying modifiersQuerying, PhysicalCard self) { + if (_condition.isFullfilled(gameState, modifiersQuerying)) + return _conditionFullfilled; + return _default; + } +} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set7/dwarven/Card7_003.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set7/dwarven/Card7_003.java new file mode 100644 index 000000000..6b6d0c059 --- /dev/null +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set7/dwarven/Card7_003.java @@ -0,0 +1,34 @@ +package com.gempukku.lotro.cards.set7.dwarven; + +import com.gempukku.lotro.cards.AbstractEvent; +import com.gempukku.lotro.cards.actions.PlayEventAction; +import com.gempukku.lotro.cards.effects.choose.ChooseAndAddUntilEOPStrengthBonusEffect; +import com.gempukku.lotro.cards.modifiers.evaluator.ConditionEvaluator; +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.modifiers.SpotCondition; + +/** + * Set: The Return of the King + * Side: Free + * Culture: Dwarven + * Twilight Cost: 0 + * Type: Event • Skirmish + * Game Text: Make a Dwarf strength +2 (+4 if you spot a card stacked on a [DWARVEN] condition). + */ +public class Card7_003 extends AbstractEvent { + public Card7_003() { + super(Side.FREE_PEOPLE, 0, Culture.DWARVEN, "Battle Tested", Phase.SKIRMISH); + } + + @Override + public PlayEventAction getPlayCardAction(String playerId, LotroGame game, PhysicalCard self, int twilightModifier) { + PlayEventAction action = new PlayEventAction(self); + action.appendEffect( + new ChooseAndAddUntilEOPStrengthBonusEffect(action, self, playerId, + new ConditionEvaluator(2, 4, new SpotCondition(CardType.CONDITION, Culture.DWARVEN, Filters.hasStacked(Filters.any))), Race.DWARF)); + return action; + } +}