diff --git a/gemp-lotr/gemp-lotr-async/src/main/web/cards/set1/set1-wraith.json b/gemp-lotr/gemp-lotr-async/src/main/web/cards/set1/set1-wraith.json index 55cac2ba0..d2ef45464 100644 --- a/gemp-lotr/gemp-lotr-async/src/main/web/cards/set1/set1-wraith.json +++ b/gemp-lotr/gemp-lotr-async/src/main/web/cards/set1/set1-wraith.json @@ -712,5 +712,351 @@ } } ] + }, + "1_226": { + "title": "Their Power Is In Terror", + "culture": "wraith", + "cost": 0, + "type": "event", + "keyword": "maneuver", + "effects": { + "type": "event", + "cost": { + "type": "exert", + "filter": "choose(nazgul)" + }, + "effect": { + "type": "wound", + "filter": "all(ally)" + } + } + }, + "1_227": { + "title": "Threshold of Shadow", + "culture": "wraith", + "cost": 1, + "type": "event", + "keyword": "skirmish", + "effects": { + "type": "event", + "effect": { + "type": "modifyStrength", + "filter": "choose(nazgul)", + "amount": { + "type": "condition", + "condition": { + "type": "canSpotBurdens", + "amount": 5 + }, + "true": 4, + "false": 2 + } + } + } + }, + "1_228": { + "title": "The Twilight World", + "culture": "wraith", + "cost": 0, + "type": "event", + "keyword": "response", + "effects": { + "type": "responseEvent", + "trigger": { + "type": "putsOnRing" + }, + "cost": { + "type": "exert", + "filter": "choose(nazgul)" + }, + "effect": { + "type": "addBurdens", + "amount": 2 + } + } + }, + "1_229": { + "title": "*Úlairë Attëa", + "subtitle": "Keeper of Dol Guldur", + "culture": "wraith", + "cost": 6, + "type": "minion", + "race": "nazgul", + "strength": 12, + "vitality": 3, + "site": 3, + "keyword": "fierce", + "effects": { + "type": "activated", + "phase": "skirmish", + "cost": { + "type": "removeTwilight" + }, + "effect": { + "type": "conditional", + "condition": { + "type": "perPhaseLimit", + "limit": 5 + }, + "effect": [ + { + "type": "incrementPerPhaseLimit", + "limit": 5 + }, + { + "type": "modifyStrength", + "filter": "self", + "amount": 1 + } + ] + } + } + }, + "1_230": { + "title": "*Úlairë Cantëa", + "subtitle": "Lieutenant of Dol Guldur", + "culture": "wraith", + "cost": 5, + "type": "minion", + "race": "nazgul", + "strength": 10, + "vitality": 3, + "site": 3, + "keyword": "fierce", + "effects": { + "type": "activated", + "phase": "skirmish", + "cost": { + "type": "exert", + "filter": "self" + }, + "effect": { + "type": "discard", + "filter": "choose(weapon,attachedTo(character,inSkirmishAgainst(self)))" + } + } + }, + "1_231": { + "title": "*Úlairë Enquëa", + "subtitle": "Lieutenant of Morgul", + "culture": "wraith", + "cost": 6, + "type": "minion", + "race": "nazgul", + "strength": 11, + "vitality": 4, + "site": 3, + "keyword": "fierce", + "condition": { + "type": "or", + "condition": [ + { + "type": "canSpot", + "count": 6, + "filter": "companion" + }, + { + "type": "canSpotBurdens", + "amount": 5 + } + ] + }, + "effects": { + "type": "activated", + "phase": "maneuver", + "cost": { + "type": "exert", + "filter": "self" + }, + "effect": { + "type": "wound", + "filter": "choose(companion,not(ring bearer))" + } + } + }, + "1_232": { + "title": "*Úlairë Lemenya", + "subtitle": "Lieutenant of Morgul", + "culture": "wraith", + "cost": 4, + "type": "minion", + "race": "nazgul", + "strength": 9, + "vitality": 2, + "site": 3, + "effects": { + "type": "modifier", + "modifier": { + "type": "modifyStrength", + "filter": "or(companion,ally),hasAttached(culture(wraith),condition)", + "amount": -2 + } + } + }, + "1_233": { + "title": "*Úlairë Nelya", + "subtitle": "Lieutenant of Morgul", + "culture": "wraith", + "cost": 5, + "type": "minion", + "race": "nazgul", + "strength": 10, + "vitality": 3, + "site": 2, + "keyword": "fierce", + "effects": { + "type": "activated", + "phase": "shadow", + "cost": [ + { + "type": "exert", + "filter": "self" + }, + { + "type": "spot", + "filter": "choose(not(your),site)", + "memorize": "spottedSite" + } + ], + "effect": { + "type": "playSite", + "block": "fellowship", + "number": { + "type": "siteNumberInMemory", + "memory": "spottedSite" + } + } + } + }, + "1_234": { + "title": "*Úlairë Nertëa", + "subtitle": "Messenger of Dol Guldur", + "culture": "wraith", + "cost": 4, + "type": "minion", + "race": "nazgul", + "strength": 9, + "vitality": 2, + "site": 3, + "effects": { + "type": "trigger", + "trigger": { + "type": "played", + "filter": "self" + }, + "effect": { + "type": "duplicate", + "amount": { + "type": "forEachYouCanSpot", + "filter": "companion", + "over": 4 + }, + "effect": { + "type": "optional", + "text": "Would you like to play minion from your discard?", + "effect": { + "type": "playCardFromDiscard", + "filter": "choose(minion)" + } + } + } + } + }, + "1_235": { + "title": "*Úlairë Otsëa", + "subtitle": "Lieutenant of Morgul", + "culture": "wraith", + "cost": 4, + "type": "minion", + "race": "nazgul", + "strength": 9, + "vitality": 3, + "site": 3, + "effects": { + "type": "activated", + "phase": "shadow", + "cost": { + "type": "exert", + "filter": "self" + }, + "effect": { + "type": "addKeyword", + "filter": "choose(culture(wraith),minion)", + "keyword": "fierce", + "until": "start(regroup)" + } + } + }, + "1_236": { + "title": "*Úlairë Toldëa", + "subtitle": "Messenger of Morgul", + "culture": "wraith", + "cost": 6, + "type": "minion", + "race": "nazgul", + "strength": 12, + "vitality": 3, + "site": 3, + "keyword": "fierce", + "effects": { + "type": "activated", + "phase": "assignment", + "condition": { + "type": "canSpotBurdens", + "amount": 4 + }, + "effect": { + "type": "assignFpCharacterToSkirmish", + "fpCharacter": "choose(companion,not(ring bearer))", + "against": "self" + } + } + }, + "1_237": { + "title": "The Witch-king", + "subtitle": "Lord of Angmar", + "culture": "wraith", + "cost": 8, + "type": "minion", + "race": "nazgul", + "strength": 14, + "vitality": 4, + "site": 3, + "keyword": "fierce", + "effects": { + "type": "modifier", + "modifier": { + "type": "modifyStrength", + "filter": "self", + "amount": { + "type": "forEachYouCanSpot", + "filter": "another,nazgul", + "multiplier": 2 + } + } + } + }, + "1_238": { + "title": "Wreathed in Shadow", + "culture": "wraith", + "cost": 0, + "type": "condition", + "condition": { + "type": "canSpot", + "filter": "nazgul" + }, + "keyword": "support area", + "effects": { + "type": "activated", + "phase": "archery", + "cost": { + "type": "removeTwilight" + }, + "effect": { + "type": "modifyArcheryTotal", + "side": "free people", + "amount": -1 + } + } } } \ No newline at end of file diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_226.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_226.java deleted file mode 100644 index 866e260c7..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_226.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.gempukku.lotro.cards.set1.wraith; - -import com.gempukku.lotro.common.*; -import com.gempukku.lotro.game.PhysicalCard; -import com.gempukku.lotro.game.state.LotroGame; -import com.gempukku.lotro.logic.actions.PlayEventAction; -import com.gempukku.lotro.logic.cardtype.AbstractEvent; -import com.gempukku.lotro.logic.effects.WoundCharactersEffect; -import com.gempukku.lotro.logic.effects.choose.ChooseAndExertCharactersEffect; -import com.gempukku.lotro.logic.timing.PlayConditions; - -/** - * Set: The Fellowship of the Ring - * Side: Shadow - * Culture: Wraith - * Twilight Cost: 0 - * Type: Event - * Game Text: Maneuver: Exert a Nazgul to wound every ally. - */ -public class Card1_226 extends AbstractEvent { - public Card1_226() { - super(Side.SHADOW, 0, Culture.WRAITH, "Their Power Is in Terror", Phase.MANEUVER); - } - - @Override - public boolean checkPlayRequirements(LotroGame game, PhysicalCard self) { - return PlayConditions.canExert(self, game, Race.NAZGUL); - } - - @Override - public PlayEventAction getPlayEventCardAction(String playerId, LotroGame game, PhysicalCard self) { - PlayEventAction action = new PlayEventAction(self); - action.appendCost( - new ChooseAndExertCharactersEffect(action, playerId, 1, 1, Race.NAZGUL)); - action.appendEffect( - new WoundCharactersEffect(self, CardType.ALLY)); - return action; - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_227.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_227.java deleted file mode 100644 index fd8df5d1a..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_227.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.gempukku.lotro.cards.set1.wraith; - -import com.gempukku.lotro.common.Culture; -import com.gempukku.lotro.common.Phase; -import com.gempukku.lotro.common.Race; -import com.gempukku.lotro.common.Side; -import com.gempukku.lotro.filters.Filters; -import com.gempukku.lotro.game.PhysicalCard; -import com.gempukku.lotro.game.state.LotroGame; -import com.gempukku.lotro.logic.actions.PlayEventAction; -import com.gempukku.lotro.logic.cardtype.AbstractEvent; -import com.gempukku.lotro.logic.effects.AddUntilEndOfPhaseModifierEffect; -import com.gempukku.lotro.logic.effects.ChooseActiveCardEffect; -import com.gempukku.lotro.logic.modifiers.StrengthModifier; - -/** - * Set: The Fellowship of the Ring - * Side: Shadow - * Culture: Wraith - * Twilight Cost: 1 - * Type: Event - * Game Text: Skirmish: Make a Nazgul strength +2 (or +4 if you spot 5 burdens). - */ -public class Card1_227 extends AbstractEvent { - public Card1_227() { - super(Side.SHADOW, 1, Culture.WRAITH, "Threshold of Shadow", Phase.SKIRMISH); - } - - @Override - public PlayEventAction getPlayEventCardAction(String playerId, final LotroGame game, final PhysicalCard self) { - final PlayEventAction action = new PlayEventAction(self); - action.appendEffect( - new ChooseActiveCardEffect(self, playerId, "Choose a Nazgul", Race.NAZGUL) { - @Override - protected void cardSelected(LotroGame game, PhysicalCard nazgul) { - int bonus = (game.getGameState().getBurdens() >= 5) ? 4 : 2; - action.appendEffect( - new AddUntilEndOfPhaseModifierEffect( - new StrengthModifier(self, Filters.sameCard(nazgul), bonus))); - } - }); - return action; - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_228.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_228.java deleted file mode 100644 index f728e95c5..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_228.java +++ /dev/null @@ -1,47 +0,0 @@ -package com.gempukku.lotro.cards.set1.wraith; - -import com.gempukku.lotro.common.Culture; -import com.gempukku.lotro.common.Race; -import com.gempukku.lotro.common.Side; -import com.gempukku.lotro.filters.Filters; -import com.gempukku.lotro.game.PhysicalCard; -import com.gempukku.lotro.game.state.LotroGame; -import com.gempukku.lotro.logic.PlayUtils; -import com.gempukku.lotro.logic.actions.PlayEventAction; -import com.gempukku.lotro.logic.cardtype.AbstractResponseEvent; -import com.gempukku.lotro.logic.effects.AddBurdenEffect; -import com.gempukku.lotro.logic.effects.choose.ChooseAndExertCharactersEffect; -import com.gempukku.lotro.logic.timing.EffectResult; -import com.gempukku.lotro.logic.timing.PlayConditions; - -import java.util.Collections; -import java.util.List; - -/** - * Set: The Fellowship of the Ring - * Side: Shadow - * Culture: Wraith - * Twilight Cost: 0 - * Type: Event - * Game Text: Response: If Ring-bearer puts on The One Ring, exert a Nazgul to add 2 burdens. - */ -public class Card1_228 extends AbstractResponseEvent { - public Card1_228() { - super(Side.SHADOW, 0, Culture.WRAITH, "The Twilight World"); - } - - @Override - public List getOptionalInHandAfterActions(String playerId, LotroGame game, EffectResult effectResult, PhysicalCard self) { - if (effectResult.getType() == EffectResult.Type.PUT_ON_THE_ONE_RING - && PlayUtils.checkPlayRequirements(game, self, Filters.any, 0, 0, false, false) - && PlayConditions.canExert(self, game, Race.NAZGUL)) { - PlayEventAction action = new PlayEventAction(self); - action.appendCost( - new ChooseAndExertCharactersEffect(action, playerId, 1, 1, Race.NAZGUL)); - action.appendEffect( - new AddBurdenEffect(self.getOwner(), self, 2)); - return Collections.singletonList(action); - } - return null; - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_229.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_229.java deleted file mode 100644 index fcb75fe1e..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_229.java +++ /dev/null @@ -1,48 +0,0 @@ -package com.gempukku.lotro.cards.set1.wraith; - -import com.gempukku.lotro.common.*; -import com.gempukku.lotro.game.PhysicalCard; -import com.gempukku.lotro.game.state.LotroGame; -import com.gempukku.lotro.logic.actions.ActivateCardAction; -import com.gempukku.lotro.logic.cardtype.AbstractMinion; -import com.gempukku.lotro.logic.effects.AddUntilEndOfPhaseModifierEffect; -import com.gempukku.lotro.logic.effects.RemoveTwilightEffect; -import com.gempukku.lotro.logic.modifiers.StrengthModifier; -import com.gempukku.lotro.logic.modifiers.evaluator.CardPhaseLimitEvaluator; -import com.gempukku.lotro.logic.modifiers.evaluator.ConstantEvaluator; -import com.gempukku.lotro.logic.timing.PlayConditions; - -import java.util.Collections; -import java.util.List; - -/** - * Set: The Fellowship of the Ring - * Side: Shadow - * Culture: Wraith - * Twilight Cost: 6 - * Type: Minion • Nazgul - * Strength: 12 - * Vitality: 3 - * Site: 3 - * Game Text: Fierce. Skirmish: Remove (1) to make Úlairë Attëa strength +1 (limit +5). - */ -public class Card1_229 extends AbstractMinion { - public Card1_229() { - super(6, 12, 3, 3, Race.NAZGUL, Culture.WRAITH, Names.attea, "Keeper of Dol Guldur", true); - addKeyword(Keyword.FIERCE); - } - - @Override - public List getPhaseActionsInPlay(String playerId, LotroGame game, final PhysicalCard self) { - if (PlayConditions.canUseShadowCardDuringPhase(game, Phase.SKIRMISH, self, 1)) { - ActivateCardAction action = new ActivateCardAction(self); - action.appendCost(new RemoveTwilightEffect(1)); - action.appendEffect( - new AddUntilEndOfPhaseModifierEffect( - new StrengthModifier(self, self, null, - new CardPhaseLimitEvaluator(game, self, Phase.SKIRMISH, 5, new ConstantEvaluator(1))))); - return Collections.singletonList(action); - } - return null; - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_230.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_230.java deleted file mode 100644 index 629ec5c56..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_230.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.gempukku.lotro.cards.set1.wraith; - -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.game.state.Skirmish; -import com.gempukku.lotro.logic.actions.ActivateCardAction; -import com.gempukku.lotro.logic.cardtype.AbstractMinion; -import com.gempukku.lotro.logic.effects.SelfExertEffect; -import com.gempukku.lotro.logic.effects.choose.ChooseAndDiscardCardsFromPlayEffect; -import com.gempukku.lotro.logic.timing.PlayConditions; - -import java.util.Collections; -import java.util.List; - -/** - * Set: The Fellowship of the Ring - * Side: Shadow - * Culture: Wraith - * Twilight Cost: 5 - * Type: Minion • Nazgul - * Strength: 10 - * Vitality: 3 - * Site: 3 - * Game Text: Fierce. Skirmish: Exert Úlairë Cantëa to discard a weapon borne by a character he is skirmishing. - */ -public class Card1_230 extends AbstractMinion { - public Card1_230() { - super(5, 10, 3, 3, Race.NAZGUL, Culture.WRAITH, Names.cantea, "Lieutenant of Dol Guldur", true); - addKeyword(Keyword.FIERCE); - } - - @Override - public List getPhaseActionsInPlay(String playerId, LotroGame game, final PhysicalCard self) { - if (PlayConditions.canUseShadowCardDuringPhase(game, Phase.SKIRMISH, self, 0) - && PlayConditions.canExert(self, game, self)) { - final ActivateCardAction action = new ActivateCardAction(self); - action.appendCost( - new SelfExertEffect(action, self)); - Skirmish skirmish = game.getGameState().getSkirmish(); - if (skirmish != null && skirmish.getShadowCharacters().contains(self)) { - action.appendEffect( - new ChooseAndDiscardCardsFromPlayEffect(action, playerId, 1, 1, Filters.weapon, Filters.attachedTo(Filters.sameCard(skirmish.getFellowshipCharacter())))); - } - return Collections.singletonList(action); - } - return null; - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_231.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_231.java deleted file mode 100644 index c22d86da5..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_231.java +++ /dev/null @@ -1,48 +0,0 @@ -package com.gempukku.lotro.cards.set1.wraith; - -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.actions.ActivateCardAction; -import com.gempukku.lotro.logic.cardtype.AbstractMinion; -import com.gempukku.lotro.logic.effects.ChooseAndWoundCharactersEffect; -import com.gempukku.lotro.logic.effects.SelfExertEffect; -import com.gempukku.lotro.logic.timing.PlayConditions; - -import java.util.Collections; -import java.util.List; - -/** - * Set: The Fellowship of the Ring - * Side: Shadow - * Culture: Wraith - * Twilight Cost: 6 - * Type: Minion • Nazgul - * Strength: 11 - * Vitality: 4 - * Site: 3 - * Game Text: Fierce. Maneuver: Spot 6 companions (or 5 burdens) and exert Úlairë Enquëa to wound a companion (except - * the Ring-bearer). - */ -public class Card1_231 extends AbstractMinion { - public Card1_231() { - super(6, 11, 4, 3, Race.NAZGUL, Culture.WRAITH, Names.enquea, "Lieutenant of Morgul", true); - addKeyword(Keyword.FIERCE); - } - - @Override - public List getPhaseActionsInPlay(final String playerId, LotroGame game, final PhysicalCard self) { - if (PlayConditions.canUseShadowCardDuringPhase(game, Phase.MANEUVER, self, 0) - && PlayConditions.canSelfExert(self, game) - && (PlayConditions.canSpotBurdens(game, 5) || PlayConditions.canSpot(game, 6, CardType.COMPANION))) { - final ActivateCardAction action = new ActivateCardAction(self); - action.appendCost( - new SelfExertEffect(action, self)); - action.appendEffect( - new ChooseAndWoundCharactersEffect(action, playerId, 1, 1, CardType.COMPANION, Filters.not(Filters.ringBearer))); - return Collections.singletonList(action); - } - return null; - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_232.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_232.java deleted file mode 100644 index 9fd8ac0fd..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_232.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.gempukku.lotro.cards.set1.wraith; - -import com.gempukku.lotro.common.CardType; -import com.gempukku.lotro.common.Culture; -import com.gempukku.lotro.common.Names; -import com.gempukku.lotro.common.Race; -import com.gempukku.lotro.filters.Filters; -import com.gempukku.lotro.game.PhysicalCard; -import com.gempukku.lotro.game.state.LotroGame; -import com.gempukku.lotro.logic.cardtype.AbstractMinion; -import com.gempukku.lotro.logic.modifiers.Modifier; -import com.gempukku.lotro.logic.modifiers.StrengthModifier; - -import java.util.Collections; -import java.util.List; - -/** - * Set: The Fellowship of the Ring - * Side: Shadow - * Culture: Wraith - * Twilight Cost: 4 - * Type: Minion • Nazgul - * Strength: 9 - * Vitality: 2 - * Site: 3 - * Game Text: Each companion or ally who bears a [WRAITH] condition is strength -2. - */ -public class Card1_232 extends AbstractMinion { - public Card1_232() { - super(4, 9, 2, 3, Race.NAZGUL, Culture.WRAITH, Names.lemenya, "Lieutenant of Morgul", true); - } - - @Override - public List getInPlayModifiers(LotroGame game, PhysicalCard self) { - return Collections.singletonList(new StrengthModifier(self, - Filters.and( - Filters.or( - CardType.ALLY, - CardType.COMPANION - ), - Filters.hasAttached( - Filters.and( - Culture.WRAITH, - CardType.CONDITION - ) - ) - ), -2)); - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_233.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_233.java deleted file mode 100644 index 44260e8d3..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_233.java +++ /dev/null @@ -1,54 +0,0 @@ -package com.gempukku.lotro.cards.set1.wraith; - -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.actions.ActivateCardAction; -import com.gempukku.lotro.logic.cardtype.AbstractMinion; -import com.gempukku.lotro.logic.effects.ChooseActiveCardEffect; -import com.gempukku.lotro.logic.effects.PlaySiteEffect; -import com.gempukku.lotro.logic.effects.SelfExertEffect; -import com.gempukku.lotro.logic.timing.PlayConditions; - -import java.util.Collections; -import java.util.List; - -/** - * Set: The Fellowship of the Ring - * Side: Shadow - * Culture: Wraith - * Twilight Cost: 5 - * Type: Minion • Nazgul - * Strength: 10 - * Vitality: 3 - * Site: 2 - * Game Text: Fierce. Shadow: Exert Úlairë Nelya and spot an opponent's site to replace it with your site of the same - * number. - */ -public class Card1_233 extends AbstractMinion { - public Card1_233() { - super(5, 10, 3, 2, Race.NAZGUL, Culture.WRAITH, Names.nelya, "Lieutenant of Morgul", true); - addKeyword(Keyword.FIERCE); - } - - @Override - public List getPhaseActionsInPlay(final String playerId, LotroGame game, PhysicalCard self) { - if (PlayConditions.canUseShadowCardDuringPhase(game, Phase.SHADOW, self, 0) - && PlayConditions.canExert(self, game, self) - && Filters.canSpot(game, CardType.SITE, Filters.not(Filters.owner(playerId)))) { - final ActivateCardAction action = new ActivateCardAction(self); - action.appendCost( - new SelfExertEffect(action, self)); - action.appendEffect( - new ChooseActiveCardEffect(self, playerId, "Choose opponent's site", CardType.SITE, Filters.not(Filters.owner(playerId))) { - @Override - protected void cardSelected(LotroGame game, PhysicalCard site) { - action.appendEffect(new PlaySiteEffect(action, playerId, SitesBlock.FELLOWSHIP, site.getSiteNumber())); - } - }); - return Collections.singletonList(action); - } - return null; - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_234.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_234.java deleted file mode 100644 index 53a4463b6..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_234.java +++ /dev/null @@ -1,60 +0,0 @@ -package com.gempukku.lotro.cards.set1.wraith; - -import com.gempukku.lotro.logic.cardtype.AbstractMinion; -import com.gempukku.lotro.logic.timing.PlayConditions; -import com.gempukku.lotro.logic.timing.TriggerConditions; -import com.gempukku.lotro.logic.effects.OptionalEffect; -import com.gempukku.lotro.logic.effects.choose.ChooseAndPlayCardFromDiscardEffect; -import com.gempukku.lotro.common.CardType; -import com.gempukku.lotro.common.Culture; -import com.gempukku.lotro.common.Names; -import com.gempukku.lotro.common.Race; -import com.gempukku.lotro.filters.Filters; -import com.gempukku.lotro.game.PhysicalCard; -import com.gempukku.lotro.game.state.LotroGame; -import com.gempukku.lotro.logic.actions.OptionalTriggerAction; -import com.gempukku.lotro.logic.timing.EffectResult; - -import java.util.Collections; -import java.util.List; - -/** - * Set: The Fellowship of the Ring - * Side: Shadow - * Culture: Wraith - * Twilight Cost: 4 - * Type: Minion • Nazgul - * Strength: 9 - * Vitality: 2 - * Site: 3 - * Game Text: When you play Úlairë Nertëa, for each companion over 4, you may play 1 minion from your discard pile. - */ -public class Card1_234 extends AbstractMinion { - public Card1_234() { - super(4, 9, 2, 3, Race.NAZGUL, Culture.WRAITH, Names.nertea, "Messenger of Dol Guldur", true); - } - - @Override - public List getOptionalAfterTriggers(String playerId, LotroGame game, EffectResult effectResult, PhysicalCard self) { - if (TriggerConditions.played(game, effectResult, self) - // You must be able to play a minion from discard to use this trigger - && PlayConditions.canPlayFromDiscard(playerId, game, CardType.MINION)) { - OptionalTriggerAction action = new OptionalTriggerAction(self); - int companions = Filters.countActive(game, CardType.COMPANION); - int minions = Math.max(0, companions - 4); - for (int i = 0; i < minions; i++) { - action.appendEffect( - new OptionalEffect(action, playerId, - new ChooseAndPlayCardFromDiscardEffect(playerId, game, CardType.MINION) { - @Override - public String getText(LotroGame game) { - return "PlayConditions minion from your discard pile"; - } - } - )); - } - return Collections.singletonList(action); - } - return null; - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_235.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_235.java deleted file mode 100644 index 36b0f59f3..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_235.java +++ /dev/null @@ -1,54 +0,0 @@ -package com.gempukku.lotro.cards.set1.wraith; - -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.actions.ActivateCardAction; -import com.gempukku.lotro.logic.cardtype.AbstractMinion; -import com.gempukku.lotro.logic.effects.AddUntilStartOfPhaseModifierEffect; -import com.gempukku.lotro.logic.effects.ChooseActiveCardEffect; -import com.gempukku.lotro.logic.effects.SelfExertEffect; -import com.gempukku.lotro.logic.modifiers.KeywordModifier; -import com.gempukku.lotro.logic.timing.PlayConditions; - -import java.util.Collections; -import java.util.List; - -/** - * Set: The Fellowship of the Ring - * Side: Shadow - * Culture: Wraith - * Twilight Cost: 4 - * Type: Minion • Nazgul - * Strength: 9 - * Vitality: 3 - * Site: 3 - * Game Text: Shadow: Exert Úlairë Otsëa to make a [WRAITH] minion fierce until the regroup phase. - */ -public class Card1_235 extends AbstractMinion { - public Card1_235() { - super(4, 9, 3, 3, Race.NAZGUL, Culture.WRAITH, Names.otsea, "Lieutenant of Morgul", true); - } - - @Override - public List getPhaseActionsInPlay(String playerId, LotroGame game, final PhysicalCard self) { - if (PlayConditions.canUseShadowCardDuringPhase(game, Phase.SHADOW, self, 0) - && PlayConditions.canExert(self, game, self)) { - final ActivateCardAction action = new ActivateCardAction(self); - action.appendCost( - new SelfExertEffect(action, self)); - action.appendEffect( - new ChooseActiveCardEffect(self, playerId, "Choose a WRAITH minion", Culture.WRAITH, CardType.MINION) { - @Override - protected void cardSelected(LotroGame game, PhysicalCard wraithMinion) { - action.appendEffect( - new AddUntilStartOfPhaseModifierEffect( - new KeywordModifier(self, Filters.sameCard(wraithMinion), Keyword.FIERCE), Phase.REGROUP)); - } - }); - return Collections.singletonList(action); - } - return null; - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_236.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_236.java deleted file mode 100644 index dea55b7bc..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_236.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.gempukku.lotro.cards.set1.wraith; - -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.actions.ActivateCardAction; -import com.gempukku.lotro.logic.cardtype.AbstractMinion; -import com.gempukku.lotro.logic.effects.choose.ChooseAndAssignCharacterToMinionEffect; -import com.gempukku.lotro.logic.timing.PlayConditions; - -import java.util.Collections; -import java.util.List; - -/** - * Set: The Fellowship of the Ring - * Side: Shadow - * Culture: Wraith - * Twilight Cost: 6 - * Type: Minion • Nazgul - * Strength: 12 - * Vitality: 3 - * Site: 3 - * Game Text: Fierce. Assignment: Spot 4 burdens to assign a companion (except the Ring-bearer) to skirmish - * Úlairë Toldëa. - */ -public class Card1_236 extends AbstractMinion { - public Card1_236() { - super(6, 12, 3, 3, Race.NAZGUL, Culture.WRAITH, Names.toldea, "Messenger of Morgul", true); - addKeyword(Keyword.FIERCE); - } - - @Override - public List getPhaseActionsInPlay(final String playerId, final LotroGame game, final PhysicalCard self) { - if (PlayConditions.canUseShadowCardDuringPhase(game, Phase.ASSIGNMENT, self, 0) - && game.getGameState().getBurdens() >= 4) { - ActivateCardAction action = new ActivateCardAction(self); - action.appendEffect( - new ChooseAndAssignCharacterToMinionEffect(action, playerId, self, CardType.COMPANION, Filters.not(Filters.ringBearer))); - return Collections.singletonList(action); - } - return null; - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_237.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_237.java deleted file mode 100644 index b821c5d70..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_237.java +++ /dev/null @@ -1,40 +0,0 @@ -package com.gempukku.lotro.cards.set1.wraith; - -import com.gempukku.lotro.common.Culture; -import com.gempukku.lotro.common.Keyword; -import com.gempukku.lotro.common.Names; -import com.gempukku.lotro.common.Race; -import com.gempukku.lotro.filters.Filters; -import com.gempukku.lotro.game.PhysicalCard; -import com.gempukku.lotro.game.state.LotroGame; -import com.gempukku.lotro.logic.cardtype.AbstractMinion; -import com.gempukku.lotro.logic.modifiers.Modifier; -import com.gempukku.lotro.logic.modifiers.StrengthModifier; -import com.gempukku.lotro.logic.modifiers.evaluator.CountActiveEvaluator; -import com.gempukku.lotro.logic.modifiers.evaluator.MultiplyEvaluator; - -import java.util.Collections; -import java.util.List; - -/** - * Set: The Fellowship of the Ring - * Side: Shadow - * Culture: Wraith - * Twilight Cost: 8 - * Type: Minion • Nazgul - * Strength: 14 - * Vitality: 4 - * Site: 3 - * Game Text: Fierce. For each other Nazgul you can spot, The Witch-king is strength +2. - */ -public class Card1_237 extends AbstractMinion { - public Card1_237() { - super(8, 14, 4, 3, Race.NAZGUL, Culture.WRAITH, Names.witchKing, "Lord of Angmar", true); - addKeyword(Keyword.FIERCE); - } - - @Override - public List getInPlayModifiers(LotroGame game, PhysicalCard self) { - return Collections.singletonList(new StrengthModifier(self, self, null, new MultiplyEvaluator(2, new CountActiveEvaluator(Race.NAZGUL, Filters.not(self))))); - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_238.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_238.java deleted file mode 100644 index 9bfb5828f..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_238.java +++ /dev/null @@ -1,48 +0,0 @@ -package com.gempukku.lotro.cards.set1.wraith; - -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.actions.ActivateCardAction; -import com.gempukku.lotro.logic.cardtype.AbstractPermanent; -import com.gempukku.lotro.logic.effects.AddUntilEndOfPhaseModifierEffect; -import com.gempukku.lotro.logic.effects.RemoveTwilightEffect; -import com.gempukku.lotro.logic.modifiers.ArcheryTotalModifier; -import com.gempukku.lotro.logic.timing.PlayConditions; - -import java.util.Collections; -import java.util.List; - -/** - * Set: The Fellowship of the Ring - * Side: Shadow - * Culture: Wraith - * Twilight Cost: 0 - * Type: Condition - * Game Text: To play, spot a Nazgul. Plays to your support area. Archery: Remove (1) to make the fellowship - * archery total -1. - */ -public class Card1_238 extends AbstractPermanent { - public Card1_238() { - super(Side.SHADOW, 0, CardType.CONDITION, Culture.WRAITH, "Wreathed in Shadow"); - } - - @Override - public boolean checkPlayRequirements(LotroGame game, PhysicalCard self) { - return Filters.canSpot(game, Race.NAZGUL); - } - - @Override - public List getPhaseActionsInPlay(String playerId, LotroGame game, PhysicalCard self) { - if (PlayConditions.canUseShadowCardDuringPhase(game, Phase.ARCHERY, self, 1)) { - ActivateCardAction action = new ActivateCardAction(self); - action.appendCost(new RemoveTwilightEffect(1)); - action.appendEffect( - new AddUntilEndOfPhaseModifierEffect( - new ArcheryTotalModifier(self, Side.FREE_PEOPLE, -1))); - return Collections.singletonList(action); - } - return null; - } -} diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/appender/PlayCardFromDiscard.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/appender/PlayCardFromDiscard.java index 48c689932..22ace2ac8 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/appender/PlayCardFromDiscard.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/appender/PlayCardFromDiscard.java @@ -37,7 +37,6 @@ public class PlayCardFromDiscard implements EffectAppenderProducer { MultiEffectAppender result = new MultiEffectAppender(); result.setPlayabilityCheckedForEffect(true); - result.addEffectAppender( CardResolver.resolveCardsInDiscard(filter, (actionContext) -> { diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/appender/resolver/ValueResolver.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/appender/resolver/ValueResolver.java index c7dc068c3..2df2fbb08 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/appender/resolver/ValueResolver.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/appender/resolver/ValueResolver.java @@ -68,6 +68,12 @@ public class ValueResolver { }; } else if (type.equalsIgnoreCase("siteNumber")) { return actionContext -> (game, cardAffected) -> game.getGameState().getCurrentSiteNumber(); + } else if (type.equalsIgnoreCase("siteNumberInMemory")) { + FieldUtils.validateAllowedFields(object, "memory"); + final String memory = FieldUtils.getString(object.get("memory"), "memory"); + return actionContext -> (game, cardAffected) -> { + return actionContext.getCardFromMemory(memory).getSiteNumber(); + }; } else if (type.equalsIgnoreCase("forRegionNumber")) { FieldUtils.validateAllowedFields(object); return (actionContext) -> (game, cardAffected) -> GameUtils.getRegion(actionContext.getGame());