From 6e724f53cb0fa50c8aafefe031631699492c08a0 Mon Sep 17 00:00:00 2001 From: "marcins78@gmail.com" Date: Wed, 22 Feb 2012 17:45:49 +0000 Subject: [PATCH] "White Hand Attacker" --- .../cards/set17/uruk_hai/Card17_120.java | 45 +++++++++++++++++++ .../com/gempukku/lotro/common/Keyword.java | 15 ++++++- 2 files changed, 58 insertions(+), 2 deletions(-) create mode 100644 gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set17/uruk_hai/Card17_120.java diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set17/uruk_hai/Card17_120.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set17/uruk_hai/Card17_120.java new file mode 100644 index 000000000..4571a8d97 --- /dev/null +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set17/uruk_hai/Card17_120.java @@ -0,0 +1,45 @@ +package com.gempukku.lotro.cards.set17.uruk_hai; + +import com.gempukku.lotro.cards.AbstractMinion; +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.KeywordModifier; +import com.gempukku.lotro.logic.modifiers.Modifier; +import com.gempukku.lotro.logic.modifiers.SpotCondition; + +import java.util.LinkedList; +import java.util.List; + +/** + * Set: Rise of Saruman + * Side: Shadow + * Culture: Uruk-hai + * Twilight Cost: 3 + * Type: Minion • Uruk-Hai + * Strength: 8 + * Vitality: 2 + * Site: 5 + * Game Text: Damage +1. While this minion is assigned to a skirmish, each site on the adventure path gains each terrain + * keyword from each site you control. + */ +public class Card17_120 extends AbstractMinion { + public Card17_120() { + super(3, 8, 2, 5, Race.URUK_HAI, Culture.URUK_HAI, "White Hand Attacker"); + addKeyword(Keyword.DAMAGE, 1); + } + + + @Override + public List getAlwaysOnModifiers(LotroGame game, PhysicalCard self) { + List modifiers = new LinkedList(); + for (Keyword keyword : Keyword.values()) { + if (keyword.isTerrain()) + modifiers.add( + new KeywordModifier(self, Filters.and(CardType.SITE, Zone.ADVENTURE_PATH), + new SpotCondition(Filters.siteControlled(self.getOwner()), keyword), keyword, 1)); + } + return modifiers; + } +} diff --git a/gemp-lotr/gemp-lotr-common/src/main/java/com/gempukku/lotro/common/Keyword.java b/gemp-lotr/gemp-lotr-common/src/main/java/com/gempukku/lotro/common/Keyword.java index 3ec9bbf9a..ad65259bf 100644 --- a/gemp-lotr/gemp-lotr-common/src/main/java/com/gempukku/lotro/common/Keyword.java +++ b/gemp-lotr/gemp-lotr-common/src/main/java/com/gempukku/lotro/common/Keyword.java @@ -13,8 +13,9 @@ public enum Keyword implements Filterable { WEATHER("Weather", true), TALE("Tale", true), SPELL("Spell", true), SEARCH("Search", true), STEALTH("Stealth", true), TENTACLE("Tentacle", true), - RIVER("River", true), PLAINS("Plains", true), UNDERGROUND("Underground", true), SANCTUARY("Sanctuary", true), FOREST("Forest", true), MARSH("Marsh", true), MOUNTAIN("Mountain", true), - BATTLEGROUND("Battleground", true), DWELLING("Dwelling", true), + RIVER("River", true, false, true), PLAINS("Plains", true, false, true), UNDERGROUND("Underground", true, false, true), + SANCTUARY("Sanctuary", true, false, true), FOREST("Forest", true, false, true), MARSH("Marsh", true, false, true), + MOUNTAIN("Mountain", true, false, true), BATTLEGROUND("Battleground", true, false, true), DWELLING("Dwelling", true, false, true), PIPEWEED("Pipeweed"), @@ -28,6 +29,7 @@ public enum Keyword implements Filterable { private String _humanReadable; private boolean _infoDisplayable; private boolean _multiples; + private boolean _terrain; private Keyword(String humanReadable) { this(humanReadable, false); @@ -38,9 +40,14 @@ public enum Keyword implements Filterable { } private Keyword(String humanReadable, boolean infoDisplayable, boolean multiples) { + this(humanReadable, infoDisplayable, multiples, false); + } + + private Keyword(String humanReadable, boolean infoDisplayable, boolean multiples, boolean terrain) { _humanReadable = humanReadable; _infoDisplayable = infoDisplayable; _multiples = multiples; + _terrain = terrain; } public String getHumanReadable() { @@ -54,4 +61,8 @@ public enum Keyword implements Filterable { public boolean isMultiples() { return _multiples; } + + public boolean isTerrain() { + return _terrain; + } }