diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set40/elven/Card40_056.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set40/elven/Card40_056.java deleted file mode 100644 index 43ecc294b..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set40/elven/Card40_056.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.gempukku.lotro.cards.set40.elven; - -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.PlayEventAction; -import com.gempukku.lotro.logic.cardtype.AbstractEvent; -import com.gempukku.lotro.logic.effects.choose.ChooseAndAddUntilEOPStrengthBonusEffect; -import com.gempukku.lotro.logic.modifiers.evaluator.CountSpottableEvaluator; -import com.gempukku.lotro.logic.modifiers.evaluator.MultiplyEvaluator; - -/** - * Title: Might of the Last Homely House - * Set: Second Edition - * Side: Free - * Culture: Elven - * Twilight Cost: 1 - * Type: Event - Skirmish - * Card Number: 1C56 - * Game Text: Make a minion skirmishing an Elf strength -X, where X is the number of Rivendell allies you can spot. - */ -public class Card40_056 extends AbstractEvent { - public Card40_056() { - super(Side.FREE_PEOPLE, 1, Culture.ELVEN, "Might of the Last Homely House", Phase.SKIRMISH); - } - - @Override - public PlayEventAction getPlayEventCardAction(String playerId, LotroGame game, PhysicalCard self) { - PlayEventAction action = new PlayEventAction(self); - action.appendEffect( - new ChooseAndAddUntilEOPStrengthBonusEffect( - action, self, playerId, new MultiplyEvaluator(-1, new CountSpottableEvaluator(CardType.ALLY, Keyword.RIVENDELL)), - CardType.MINION, Filters.inSkirmishAgainst(Race.ELF))); - return action; - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set40/gandalf/Card40_085.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set40/gandalf/Card40_085.java deleted file mode 100644 index 250081a3d..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set40/gandalf/Card40_085.java +++ /dev/null @@ -1,66 +0,0 @@ -package com.gempukku.lotro.cards.set40.gandalf; - -import com.gempukku.lotro.common.Culture; -import com.gempukku.lotro.common.Phase; -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.CancelSkirmishEffect; -import com.gempukku.lotro.logic.effects.ChoiceEffect; -import com.gempukku.lotro.logic.effects.ChooseAndHealCharactersEffect; -import com.gempukku.lotro.logic.timing.Effect; -import com.gempukku.lotro.logic.timing.PlayConditions; - -import java.util.ArrayList; -import java.util.List; - -/** - * Title: Narrow Escape - * Set: Second Edition - * Side: Free - * Culture: Gandalf - * Twilight Cost: 2 - * Type: Event - Skirmish - * Card Number: 1C85 - * Game Text: Spot Saruman to cancel a skirmish involving Gandalf or spot Gandalf to heal him once for each threat. - */ -public class Card40_085 extends AbstractEvent { - public Card40_085() { - super(Side.FREE_PEOPLE, 2, Culture.GANDALF, "Narrow Escape", Phase.SKIRMISH); - } - - @Override - public boolean checkPlayRequirements(LotroGame game, PhysicalCard self) { - return PlayConditions.canSpot(game, Filters.or(Filters.gandalf, Filters.saruman)); - } - - @Override - public PlayEventAction getPlayEventCardAction(String playerId, LotroGame game, PhysicalCard self) { - PlayEventAction action = new PlayEventAction(self); - List possibleEffects = new ArrayList(2); - if (PlayConditions.canSpot(game, Filters.saruman)) { - possibleEffects.add( - new CancelSkirmishEffect(Filters.gandalf) { - @Override - public String getText(LotroGame game) { - return "Cancel skirmish involving Gandalf"; - } - }); - } - if (PlayConditions.canSpot(game, Filters.gandalf)) { - possibleEffects.add( - new ChooseAndHealCharactersEffect(action, playerId, 1, 1, game.getGameState().getThreats(), Filters.gandalf) { - @Override - public String getText(LotroGame game) { - return "Heal Gandalf once for each threat"; - } - }); - } - action.appendEffect( - new ChoiceEffect(action, playerId, possibleEffects)); - return action; - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set40/gandalf/Card40_092.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set40/gandalf/Card40_092.java deleted file mode 100644 index ad79dd76b..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set40/gandalf/Card40_092.java +++ /dev/null @@ -1,79 +0,0 @@ -package com.gempukku.lotro.cards.set40.gandalf; - -import com.gempukku.lotro.common.CardType; -import com.gempukku.lotro.common.Culture; -import com.gempukku.lotro.common.Phase; -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.ActivateCardAction; -import com.gempukku.lotro.logic.actions.RequiredTriggerAction; -import com.gempukku.lotro.logic.cardtype.AbstractPermanent; -import com.gempukku.lotro.logic.effects.AddTwilightEffect; -import com.gempukku.lotro.logic.effects.PutCardFromStackedIntoHandEffect; -import com.gempukku.lotro.logic.effects.SelfDiscardEffect; -import com.gempukku.lotro.logic.effects.StackTopCardsFromDeckEffect; -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; - -/** - * Title: *A Wizard's Research - * Set: Second Edition - * Side: Free - * Culture: Gandalf - * Twilight Cost: 2 - * Type: Condition - Support Area - * Card Number: 1U92 - * Game Text: When there are 3 cards stacked here, discard this condition. - * Fellowship: Spot Gandalf and add (1) to stack the top card of your draw deck here. - * Maneuver: Exert Gandalf and discard this condition to take each card stacked here into hand. - */ -public class Card40_092 extends AbstractPermanent { - public Card40_092() { - super(Side.FREE_PEOPLE, 2, CardType.CONDITION, Culture.GANDALF, "A Wizard's Research", null, true); - } - - @Override - public List getRequiredAfterTriggers(LotroGame game, EffectResult effectResult, PhysicalCard self) { - if (game.getGameState().getStackedCards(self).size() >= 3) { - RequiredTriggerAction action = new RequiredTriggerAction(self); - action.appendEffect( - new SelfDiscardEffect(self)); - return Collections.singletonList(action); - } - return null; - } - - @Override - public List getPhaseActionsInPlay(String playerId, LotroGame game, PhysicalCard self) { - if (PlayConditions.canUseFPCardDuringPhase(game, Phase.FELLOWSHIP, self) - && PlayConditions.canSpot(game, Filters.gandalf)) { - ActivateCardAction action = new ActivateCardAction(self); - action.appendCost( - new AddTwilightEffect(self, 1)); - action.appendEffect( - new StackTopCardsFromDeckEffect(self, playerId, 1, self)); - return Collections.singletonList(action); - } - if (PlayConditions.canUseFPCardDuringPhase(game, Phase.MANEUVER, self) - && PlayConditions.canExert(self, game, Filters.gandalf) - && PlayConditions.canSelfDiscard(self, game)) { - ActivateCardAction action = new ActivateCardAction(self); - action.appendCost( - new ChooseAndExertCharactersEffect(action, playerId, 1, 1, Filters.gandalf)); - for (PhysicalCard stackedCard : game.getGameState().getStackedCards(self)) { - action.appendEffect( - new PutCardFromStackedIntoHandEffect(stackedCard)); - } - action.appendEffect( - new SelfDiscardEffect(self)); - return Collections.singletonList(action); - } - return null; - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set40/gondor/Card40_107.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set40/gondor/Card40_107.java deleted file mode 100644 index e2d95f1cd..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set40/gondor/Card40_107.java +++ /dev/null @@ -1,47 +0,0 @@ -package com.gempukku.lotro.cards.set40.gondor; - -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.AddUntilStartOfPhaseModifierEffect; -import com.gempukku.lotro.logic.effects.choose.ChooseAndExertCharactersEffect; -import com.gempukku.lotro.logic.modifiers.KeywordModifier; -import com.gempukku.lotro.logic.timing.PlayConditions; - -/** - * Title: Elendil! - * Set: Second Edition - * Side: Free - * Culture: Gondor - * Twilight Cost: 0 - * Type: Event - Maneuver - * Card Number: 1C107 - * Game Text: Exert a [GONDOR] companion to make him defender +1 until the regroup phase. - */ -public class Card40_107 extends AbstractEvent { - public Card40_107() { - super(Side.FREE_PEOPLE, 0, Culture.GONDOR, "Elendil!", Phase.MANEUVER); - } - - @Override - public boolean checkPlayRequirements(LotroGame game, PhysicalCard self) { - return PlayConditions.canExert(self, game, Culture.GONDOR, CardType.COMPANION); - } - - @Override - public PlayEventAction getPlayEventCardAction(String playerId, LotroGame game, final PhysicalCard self) { - final PlayEventAction action = new PlayEventAction(self); - action.appendCost( - new ChooseAndExertCharactersEffect(action, playerId, 1, 1, Culture.GONDOR, CardType.COMPANION) { - @Override - protected void forEachCardExertedCallback(PhysicalCard character) { - action.appendEffect( - new AddUntilStartOfPhaseModifierEffect( - new KeywordModifier(self, character, Keyword.DEFENDER, 1), Phase.REGROUP)); - } - }); - return action; - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set40/gondor/Card40_109.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set40/gondor/Card40_109.java deleted file mode 100644 index 91bb1770c..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set40/gondor/Card40_109.java +++ /dev/null @@ -1,58 +0,0 @@ -package com.gempukku.lotro.cards.set40.gondor; - -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.AbstractAttachableFPPossession; -import com.gempukku.lotro.logic.effects.ChooseActiveCardEffect; -import com.gempukku.lotro.logic.effects.ReplaceInSkirmishEffect; -import com.gempukku.lotro.logic.effects.choose.ChooseAndExertCharactersEffect; -import com.gempukku.lotro.logic.timing.PlayConditions; - -import java.util.Collections; -import java.util.List; - -/** - * Title: *Horn of Gondor - * Set: Second Edition - * Side: Free - * Culture: Gondor - * Twilight Cost: 0 - * Type: Possession - Horn - * Card Number: 1U109 - * Game Text: Bearer must be a [GONDOR] Man. - * Skirmish: Exert bearer twice to have another companion replace this companion in this skirmish. - */ -public class Card40_109 extends AbstractAttachableFPPossession { - public Card40_109() { - super(0, 0, 0, Culture.GONDOR, PossessionClass.HORN, "Horn of Gondor", null, true); - } - - @Override - public Filterable getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self) { - return Filters.and(Culture.GONDOR, Race.MAN); - } - - @Override - public List getPhaseActionsInPlay(String playerId, LotroGame game, final PhysicalCard self) { - if (PlayConditions.canUseFPCardDuringPhase(game, Phase.SKIRMISH, self) - && PlayConditions.canExert(self, game, 2, Filters.hasAttached(self))) { - final ActivateCardAction action = new ActivateCardAction(self); - action.appendCost( - new ChooseAndExertCharactersEffect(action, playerId, 1, 1, 2, Filters.hasAttached(self))); - if (PlayConditions.isActive(game, Filters.inSkirmish, Filters.hasAttached(self))) - action.appendEffect( - new ChooseActiveCardEffect(self, playerId, "Choose a companion to replace in skirmish", CardType.COMPANION, Filters.notAssignedToSkirmish) { - @Override - protected void cardSelected(LotroGame game, PhysicalCard card) { - action.appendEffect( - new ReplaceInSkirmishEffect(card, Filters.hasAttached(self))); - } - }); - return Collections.singletonList(action); - } - return null; - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set40/sauron/Card40_235.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set40/sauron/Card40_235.java deleted file mode 100644 index a798fadb0..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set40/sauron/Card40_235.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.gempukku.lotro.cards.set40.sauron; - -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.cardtype.AbstractMinion; -import com.gempukku.lotro.logic.modifiers.Modifier; -import com.gempukku.lotro.logic.modifiers.SidePlayerCantPlayPhaseEventsOrSpecialAbilitiesModifier; -import com.gempukku.lotro.logic.modifiers.SpotCondition; -import com.gempukku.lotro.logic.modifiers.condition.AndCondition; - -import java.util.Collections; -import java.util.List; - -/** - * Title: *Orc Skulker - * Set: Second Edition - * Side: Shadow - * Culture: Sauron - * Twilight Cost: 3 - * Type: Minion - Orc - * Strength: 9 - * Vitality: 3 - * Home: 6 - * Card Number: 1U235 - * Game Text: Tracker. - * While you can spot 3 trackers, the Free Peoples player may not play skirmish events or use skirmish special abilities - * in skirmishes involving this minion. - */ -public class Card40_235 extends AbstractMinion { - public Card40_235() { - super(3, 9, 3, 6, Race.ORC, Culture.SAURON, "Orc Skulker", null, true); - addKeyword(Keyword.TRACKER); - } - - @Override - public List getInPlayModifiers(LotroGame game, PhysicalCard self) { - SidePlayerCantPlayPhaseEventsOrSpecialAbilitiesModifier modifier = new SidePlayerCantPlayPhaseEventsOrSpecialAbilitiesModifier( - self, new AndCondition(new SpotCondition(3, Keyword.TRACKER), new SpotCondition(self, Filters.inSkirmish)), - Side.FREE_PEOPLE, Phase.SKIRMISH); - return Collections.singletonList(modifier); - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set40/wraith/Card40_212.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set40/wraith/Card40_212.java deleted file mode 100644 index d77b8d827..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set40/wraith/Card40_212.java +++ /dev/null @@ -1,48 +0,0 @@ -package com.gempukku.lotro.cards.set40.wraith; - -import com.gempukku.lotro.common.Culture; -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.KillEffect; -import com.gempukku.lotro.logic.effects.choose.ChooseAndReturnCardsToHandEffect; -import com.gempukku.lotro.logic.timing.Effect; -import com.gempukku.lotro.logic.timing.TriggerConditions; - -import java.util.Collections; -import java.util.List; - -import static com.gempukku.lotro.common.Race.NAZGUL; - -/** - * Title: You Cannot Kill Them - * Set: Second Edition - * Side: Shadow - * Culture: Ringwraith - * Twilight Cost: 1 - * Type: Event - Response - * Card Number: 1U212 - * Game Text: If a Nazgul is about to be killed, return that Nazgul to your hand. - */ -public class Card40_212 extends AbstractResponseEvent { - public Card40_212() { - super(Side.SHADOW, 1, Culture.WRAITH, "You Cannot Kill Them"); - } - - @Override - public List getOptionalInHandBeforeActions(String playerId, LotroGame game, Effect effect, PhysicalCard self) { - if (TriggerConditions.isGettingKilled(effect, game, NAZGUL) - && PlayUtils.checkPlayRequirements(game, self, Filters.any, 0, 0, false, false)) { - KillEffect killEffect = (KillEffect) effect; - PlayEventAction action = new PlayEventAction(self); - action.appendEffect( - new ChooseAndReturnCardsToHandEffect(action, playerId, 1, 1, Filters.in(killEffect.getCharactersToBeKilled()), NAZGUL)); - return Collections.singletonList(action); - } - return null; - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/resources/set40-rarity.txt b/gemp-lotr/gemp-lotr-cards/src/main/resources/set40-rarity.txt index 767e77108..adf6fd3dc 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/resources/set40-rarity.txt +++ b/gemp-lotr/gemp-lotr-cards/src/main/resources/set40-rarity.txt @@ -53,7 +53,6 @@ 40S53 40S54 40S55 -40S56 40S57 40S58 40S59 @@ -82,14 +81,12 @@ 40S82 40S83 40S84 -40S85 40S86 40S87 40S88 40S89 40S90 40S91 -40S92 40S93 40S94 40S95 @@ -104,9 +101,7 @@ 40S104 40S105 40S106 -40S107 40S108 -40S109 40S110 40S111 40S112 @@ -209,7 +204,6 @@ 40S209 40S210 40S211 -40S212 40S213 40S214 40S215 @@ -232,7 +226,6 @@ 40S232 40S233 40S234 -40S235 40S236 40S237 40S238