From 67eac67cc83cbe86ee2646c7eca87dea267f0fb8 Mon Sep 17 00:00:00 2001 From: marcins78 Date: Wed, 13 Feb 2013 14:57:10 +0000 Subject: [PATCH] "Plateau of Gorgoroth" --- .../lotro/cards/set20/site/Card20_468.java | 47 +++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set20/site/Card20_468.java diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set20/site/Card20_468.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set20/site/Card20_468.java new file mode 100644 index 000000000..c31a8654c --- /dev/null +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set20/site/Card20_468.java @@ -0,0 +1,47 @@ +package com.gempukku.lotro.cards.set20.site; + +import com.gempukku.lotro.cards.AbstractSite; +import com.gempukku.lotro.cards.modifiers.ResistanceModifier; +import com.gempukku.lotro.common.Block; +import com.gempukku.lotro.common.CardType; +import com.gempukku.lotro.common.Keyword; +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.modifiers.Modifier; +import com.gempukku.lotro.logic.modifiers.ModifiersQuerying; +import com.gempukku.lotro.logic.modifiers.evaluator.Evaluator; + +/** + * Plateau of Gorgoroth + * 9 9 + * Plains. + * The Ring-bearer is resistance -1 for each companion in the dead pile (or -2 if that companion is a Hobbit). + */ +public class Card20_468 extends AbstractSite { + public Card20_468() { + super("Plateau of Gorgoroth", Block.SECOND_ED, 9, 9, null); + addKeyword(Keyword.PLAINS); + } + + @Override + public Modifier getAlwaysOnModifier(LotroGame game, PhysicalCard self) { + return new ResistanceModifier(self, Filters.ringBearer, + new Evaluator() { + @Override + public int evaluateExpression(GameState gameState, ModifiersQuerying modifiersQuerying, PhysicalCard cardAffected) { + int modifier = 0; + for (PhysicalCard companionInDeadPile : Filters.filter(gameState.getDeadPile(gameState.getCurrentPlayerId()), gameState, modifiersQuerying, CardType.COMPANION)) { + if (companionInDeadPile.getBlueprint().getRace() == Race.HOBBIT) + modifier -= 2; + else + modifier -=1; + } + + return modifier; + } + }); + } +}