diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/sauron/Card3_088.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/sauron/Card3_088.java index 8ef3fa130..7383ec2ce 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/sauron/Card3_088.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/sauron/Card3_088.java @@ -1,4 +1,47 @@ package com.gempukku.lotro.cards.set3.sauron; -public class Card3_088 { +import com.gempukku.lotro.cards.AbstractEvent; +import com.gempukku.lotro.cards.actions.PlayEventAction; +import com.gempukku.lotro.cards.effects.DiscardTopCardFromDeckEffect; +import com.gempukku.lotro.common.*; +import com.gempukku.lotro.filters.Filters; +import com.gempukku.lotro.game.PhysicalCard; +import com.gempukku.lotro.game.state.LotroGame; + +/** + * Set: Realms of Elf-lords + * Side: Shadow + * Culture: Sauron + * Twilight Cost: 0 + * Type: Event + * Game Text: Search. Shadow: Spot a [SAURON] minion and a Nazgul to make the Free Peoples player discard a card from + * the top of his or her deck for each burden you can spot. + */ +public class Card3_088 extends AbstractEvent { + public Card3_088() { + super(Side.SHADOW, Culture.SAURON, "Get Off the Road!", Phase.SHADOW); + addKeyword(Keyword.SEARCH); + } + + @Override + public boolean checkPlayRequirements(String playerId, LotroGame game, PhysicalCard self, int twilightModifier) { + return super.checkPlayRequirements(playerId, game, self, twilightModifier) + && Filters.canSpot(game.getGameState(), game.getModifiersQuerying(), Filters.culture(Culture.SAURON), Filters.type(CardType.MINION)) + && Filters.canSpot(game.getGameState(), game.getModifiersQuerying(), Filters.race(Race.NAZGUL)); + } + + @Override + public int getTwilightCost() { + return 0; + } + + @Override + public PlayEventAction getPlayCardAction(String playerId, LotroGame game, PhysicalCard self, int twilightModifier) { + PlayEventAction action = new PlayEventAction(self); + int burdens = game.getGameState().getBurdens(); + for (int i = 0; i < burdens; i++) + action.appendEffect( + new DiscardTopCardFromDeckEffect(playerId)); + return action; + } } diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/sauron/Card3_089.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/sauron/Card3_089.java new file mode 100644 index 000000000..b58ef5e2a --- /dev/null +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/sauron/Card3_089.java @@ -0,0 +1,47 @@ +package com.gempukku.lotro.cards.set3.sauron; + +import com.gempukku.lotro.cards.AbstractEvent; +import com.gempukku.lotro.cards.PlayConditions; +import com.gempukku.lotro.cards.actions.PlayEventAction; +import com.gempukku.lotro.cards.costs.ChooseAndExertCharactersCost; +import com.gempukku.lotro.cards.effects.AddBurdenEffect; +import com.gempukku.lotro.common.*; +import com.gempukku.lotro.filters.Filters; +import com.gempukku.lotro.game.PhysicalCard; +import com.gempukku.lotro.game.state.LotroGame; + +/** + * Set: Realms of Elf-lords + * Side: Shadow + * Culture: Sauron + * Twilight Cost: 0 + * Type: Event + * Game Text: Regroup: Exert a [SAURON] Orc and spot a [GONDOR] companion to add a burden. + */ +public class Card3_089 extends AbstractEvent { + public Card3_089() { + super(Side.SHADOW, Culture.SAURON, "Gleaming in the Snow", Phase.REGROUP); + } + + @Override + public boolean checkPlayRequirements(String playerId, LotroGame game, PhysicalCard self, int twilightModifier) { + return super.checkPlayRequirements(playerId, game, self, twilightModifier) + && PlayConditions.canExert(self, game.getGameState(), game.getModifiersQuerying(), Filters.culture(Culture.SAURON), Filters.race(Race.ORC)) + && Filters.canSpot(game.getGameState(), game.getModifiersQuerying(), Filters.culture(Culture.GONDOR), Filters.type(CardType.COMPANION)); + } + + @Override + public int getTwilightCost() { + return 0; + } + + @Override + public PlayEventAction getPlayCardAction(String playerId, LotroGame game, PhysicalCard self, int twilightModifier) { + PlayEventAction action = new PlayEventAction(self); + action.appendCost( + new ChooseAndExertCharactersCost(action, playerId, 1, 1, Filters.culture(Culture.SAURON), Filters.race(Race.ORC))); + action.appendEffect( + new AddBurdenEffect(self)); + return action; + } +} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/sauron/Card3_090.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/sauron/Card3_090.java new file mode 100644 index 000000000..822c822bd --- /dev/null +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/sauron/Card3_090.java @@ -0,0 +1,50 @@ +package com.gempukku.lotro.cards.set3.sauron; + +import com.gempukku.lotro.cards.AbstractEvent; +import com.gempukku.lotro.cards.PlayConditions; +import com.gempukku.lotro.cards.actions.PlayEventAction; +import com.gempukku.lotro.cards.costs.ChooseAndExertCharactersCost; +import com.gempukku.lotro.cards.effects.DiscardCardAtRandomFromHandEffect; +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; + +/** + * Set: Realms of Elf-lords + * Side: Shadow + * Culture: Sauron + * Twilight Cost: 0 + * Type: Event + * Game Text: Maneuver: Exert a [SAURON] minion to make the Free Peoples player discard a card at random from his + * or her hand. + */ +public class Card3_090 extends AbstractEvent { + public Card3_090() { + super(Side.SHADOW, Culture.SAURON, "Hand of Sauron", Phase.MANEUVER); + } + + @Override + public boolean checkPlayRequirements(String playerId, LotroGame game, PhysicalCard self, int twilightModifier) { + return super.checkPlayRequirements(playerId, game, self, twilightModifier) + && PlayConditions.canExert(self, game.getGameState(), game.getModifiersQuerying(), Filters.culture(Culture.SAURON), Filters.type(CardType.MINION)); + } + + @Override + public int getTwilightCost() { + return 0; + } + + @Override + public PlayEventAction getPlayCardAction(String playerId, LotroGame game, PhysicalCard self, int twilightModifier) { + PlayEventAction action = new PlayEventAction(self); + action.appendCost( + new ChooseAndExertCharactersCost(action, playerId, 1, 1, Filters.culture(Culture.SAURON), Filters.type(CardType.MINION))); + action.appendEffect( + new DiscardCardAtRandomFromHandEffect(game.getGameState().getCurrentPlayerId())); + return action; + } +} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/sauron/Card3_091.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/sauron/Card3_091.java new file mode 100644 index 000000000..691460c56 --- /dev/null +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/sauron/Card3_091.java @@ -0,0 +1,44 @@ +package com.gempukku.lotro.cards.set3.sauron; + +import com.gempukku.lotro.cards.AbstractPermanent; +import com.gempukku.lotro.cards.PlayConditions; +import com.gempukku.lotro.cards.costs.ChooseAndExertCharactersCost; +import com.gempukku.lotro.cards.effects.DiscardTopCardFromDeckEffect; +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.timing.Action; + +import java.util.Collections; +import java.util.List; + +/** + * Set: Realms of Elf-lords + * Side: Shadow + * Culture: Sauron + * Twilight Cost: 1 + * Type: Condition + * Game Text: Plays to your support area. Regroup: Exert a [SAURON] minion to make the Free Peoples player discard + * the top card from his or her draw deck. + */ +public class Card3_091 extends AbstractPermanent { + public Card3_091() { + super(Side.SHADOW, 1, CardType.CONDITION, Culture.SAURON, Zone.SHADOW_SUPPORT, "His Cruelty and Malice"); + } + + @Override + protected List getExtraPhaseActions(String playerId, LotroGame game, PhysicalCard self) { + if (PlayConditions.canUseShadowCardDuringPhase(game.getGameState(), Phase.REGROUP, self, 0) + && PlayConditions.canExert(self, game.getGameState(), game.getModifiersQuerying(), Filters.culture(Culture.SAURON), Filters.type(CardType.MINION))) { + ActivateCardAction action = new ActivateCardAction(self, Keyword.REGROUP); + action.appendCost( + new ChooseAndExertCharactersCost(action, playerId, 1, 1, Filters.culture(Culture.SAURON), Filters.type(CardType.MINION))); + action.appendEffect( + new DiscardTopCardFromDeckEffect(game.getGameState().getCurrentPlayerId())); + return Collections.singletonList(action); + } + return null; + } +} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/sauron/Card3_092.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/sauron/Card3_092.java new file mode 100644 index 000000000..fc45b03e1 --- /dev/null +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/sauron/Card3_092.java @@ -0,0 +1,58 @@ +package com.gempukku.lotro.cards.set3.sauron; + +import com.gempukku.lotro.cards.AbstractEvent; +import com.gempukku.lotro.cards.PlayConditions; +import com.gempukku.lotro.cards.actions.PlayEventAction; +import com.gempukku.lotro.cards.costs.ChooseAndExertCharactersCost; +import com.gempukku.lotro.cards.effects.DiscardTopCardFromDeckEffect; +import com.gempukku.lotro.common.*; +import com.gempukku.lotro.filters.Filters; +import com.gempukku.lotro.game.PhysicalCard; +import com.gempukku.lotro.game.state.LotroGame; + +/** + * Set: Realms of Elf-lords + * Side: Shadow + * Culture: Sauron + * Twilight Cost: 1 + * Type: Event + * Game Text: Regroup: Exert a [SAURON] minion to discard a card from the top of the Free Peoples player's draw deck + * for each of these races you can spot in the fellowship: Dwarf, Elf, Man, and Wizard. + */ +public class Card3_092 extends AbstractEvent { + public Card3_092() { + super(Side.SHADOW, Culture.SAURON, "Massing in the East", Phase.REGROUP); + } + + @Override + public boolean checkPlayRequirements(String playerId, LotroGame game, PhysicalCard self, int twilightModifier) { + return super.checkPlayRequirements(playerId, game, self, twilightModifier) + && PlayConditions.canExert(self, game.getGameState(), game.getModifiersQuerying(), Filters.culture(Culture.SAURON), Filters.type(CardType.MINION)); + } + + @Override + public int getTwilightCost() { + return 1; + } + + @Override + public PlayEventAction getPlayCardAction(String playerId, LotroGame game, PhysicalCard self, int twilightModifier) { + PlayEventAction action = new PlayEventAction(self); + action.appendCost( + new ChooseAndExertCharactersCost(action, playerId, 1, 1, Filters.culture(Culture.SAURON), Filters.type(CardType.MINION))); + int cardsCount = 0; + if (Filters.canSpot(game.getGameState(), game.getModifiersQuerying(), Filters.type(CardType.COMPANION), Filters.race(Race.DWARF))) + cardsCount++; + if (Filters.canSpot(game.getGameState(), game.getModifiersQuerying(), Filters.type(CardType.COMPANION), Filters.race(Race.ELF))) + cardsCount++; + if (Filters.canSpot(game.getGameState(), game.getModifiersQuerying(), Filters.type(CardType.COMPANION), Filters.race(Race.MAN))) + cardsCount++; + if (Filters.canSpot(game.getGameState(), game.getModifiersQuerying(), Filters.type(CardType.COMPANION), Filters.race(Race.WIZARD))) + cardsCount++; + for (int i = 0; i < cardsCount; i++) + action.appendEffect( + new DiscardTopCardFromDeckEffect(game.getGameState().getCurrentPlayerId())); + + return action; + } +} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/sauron/Card3_093.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/sauron/Card3_093.java new file mode 100644 index 000000000..030ccdbbe --- /dev/null +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/sauron/Card3_093.java @@ -0,0 +1,46 @@ +package com.gempukku.lotro.cards.set3.sauron; + +import com.gempukku.lotro.cards.AbstractMinion; +import com.gempukku.lotro.cards.PlayConditions; +import com.gempukku.lotro.cards.costs.ExertCharactersCost; +import com.gempukku.lotro.cards.effects.ChooseAndWoundCharactersEffect; +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.timing.Action; + +import java.util.Collections; +import java.util.List; + +/** + * Set: Realms of Elf-lords + * Side: Shadow + * Culture: Sauron + * Twilight Cost: 2 + * Type: Minion • Orc + * Strength: 7 + * Vitality: 2 + * Site: 6 + * Game Text: Regroup: Exert this minion to wound a companion (except the Ring-bearer). + */ +public class Card3_093 extends AbstractMinion { + public Card3_093() { + super(2, 7, 2, 6, Race.ORC, Culture.SAURON, "Morgul Slayer"); + } + + @Override + protected List getExtraPhaseActions(String playerId, LotroGame game, PhysicalCard self) { + if (PlayConditions.canUseShadowCardDuringPhase(game.getGameState(), Phase.REGROUP, self, 0) + && PlayConditions.canExert(self, game.getGameState(), game.getModifiersQuerying(), self)) { + ActivateCardAction action = new ActivateCardAction(self, Keyword.REGROUP); + action.appendCost( + new ExertCharactersCost(self, self)); + action.appendEffect( + new ChooseAndWoundCharactersEffect(action, playerId, 1, 1, Filters.type(CardType.COMPANION), Filters.not(Filters.keyword(Keyword.RING_BEARER)))); + return Collections.singletonList(action); + } + return null; + } +} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/sauron/Card3_094.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/sauron/Card3_094.java new file mode 100644 index 000000000..84bdf1fbe --- /dev/null +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/sauron/Card3_094.java @@ -0,0 +1,44 @@ +package com.gempukku.lotro.cards.set3.sauron; + +import com.gempukku.lotro.cards.AbstractMinion; +import com.gempukku.lotro.common.CardType; +import com.gempukku.lotro.common.Culture; +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.logic.modifiers.AbstractModifier; +import com.gempukku.lotro.logic.modifiers.Modifier; +import com.gempukku.lotro.logic.modifiers.ModifierEffect; +import com.gempukku.lotro.logic.modifiers.ModifiersQuerying; + +import java.util.Collections; +import java.util.List; + +/** + * Set: Realms of Elf-lords + * Side: Shadow + * Culture: Sauron + * Twilight Cost: 2 + * Type: Minion • Orc + * Strength: 6 + * Vitality: 2 + * Site: 6 + * Game Text: For each [SAURON] condition you can spot, this minion is strength +1. + */ +public class Card3_094 extends AbstractMinion { + public Card3_094() { + super(2, 6, 2, 6, Race.ORC, Culture.SAURON, "Orc Butcher"); + } + + @Override + public List getAlwaysOnModifiers(PhysicalCard self) { + return Collections.singletonList( + new AbstractModifier(self, "For each [SAURON] condition you can spot, this minion is strength +1.", Filters.sameCard(self), new ModifierEffect[]{ModifierEffect.STRENGTH_MODIFIER}) { + @Override + public int getStrength(GameState gameState, ModifiersQuerying modifiersQuerying, PhysicalCard physicalCard, int result) { + return Filters.countSpottable(gameState, modifiersQuerying, Filters.culture(Culture.SAURON), Filters.type(CardType.CONDITION)) + result; + } + }); + } +} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/sauron/Card3_095.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/sauron/Card3_095.java new file mode 100644 index 000000000..e67dfbfca --- /dev/null +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/sauron/Card3_095.java @@ -0,0 +1,50 @@ +package com.gempukku.lotro.cards.set3.sauron; + +import com.gempukku.lotro.cards.AbstractMinion; +import com.gempukku.lotro.cards.PlayConditions; +import com.gempukku.lotro.cards.costs.ChooseAndDiscardCardsFromPlayCost; +import com.gempukku.lotro.cards.costs.ExertCharactersCost; +import com.gempukku.lotro.cards.effects.ChooseAndDiscardCardsFromPlayEffect; +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.timing.Action; + +import java.util.Collections; +import java.util.List; + +/** + * Set: Realms of Elf-lords + * Side: Shadow + * Culture: Sauron + * Twilight Cost: 1 + * Type: Minion • Orc + * Strength: 5 + * Vitality: 2 + * Site: 6 + * Game Text: Maneuver: Exert this minion and discard your [SAURON] condition to discard a Free Peoples condition. + */ +public class Card3_095 extends AbstractMinion { + public Card3_095() { + super(1, 5, 2, 6, Race.ORC, Culture.SAURON, "Orc Guard"); + } + + @Override + protected List getExtraPhaseActions(String playerId, LotroGame game, PhysicalCard self) { + if (PlayConditions.canUseShadowCardDuringPhase(game.getGameState(), Phase.MANEUVER, self, 0) + && PlayConditions.canExert(self, game.getGameState(), game.getModifiersQuerying(), self) + && Filters.countActive(game.getGameState(), game.getModifiersQuerying(), Filters.owner(playerId), Filters.culture(Culture.SAURON), Filters.type(CardType.CONDITION)) > 0) { + ActivateCardAction action = new ActivateCardAction(self, Keyword.MANEUVER); + action.appendCost( + new ExertCharactersCost(self, self)); + action.appendCost( + new ChooseAndDiscardCardsFromPlayCost(action, playerId, 1, 1, Filters.owner(playerId), Filters.culture(Culture.SAURON), Filters.type(CardType.CONDITION))); + action.appendEffect( + new ChooseAndDiscardCardsFromPlayEffect(action, playerId, 1, 1, Filters.side(Side.FREE_PEOPLE), Filters.type(CardType.CONDITION))); + return Collections.singletonList(action); + } + return null; + } +} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/sauron/Card3_096.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/sauron/Card3_096.java new file mode 100644 index 000000000..6cd67504d --- /dev/null +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/sauron/Card3_096.java @@ -0,0 +1,45 @@ +package com.gempukku.lotro.cards.set3.sauron; + +import com.gempukku.lotro.cards.AbstractMinion; +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.GameState; +import com.gempukku.lotro.logic.modifiers.AbstractModifier; +import com.gempukku.lotro.logic.modifiers.Modifier; +import com.gempukku.lotro.logic.modifiers.ModifierEffect; +import com.gempukku.lotro.logic.modifiers.ModifiersQuerying; + +import java.util.Collections; +import java.util.List; + +/** + * Set: Realms of Elf-lords + * Side: Shadow + * Culture: Sauron + * Twilight Cost: 4 + * Type: Minion • Orc + * Strength: 10 + * Vitality: 3 + * Site: 6 + * Game Text: For each Free Peoples card borne by a character this minion is skirmishing, that character is strength -1. + */ +public class Card3_096 extends AbstractMinion { + public Card3_096() { + super(4, 10, 3, 6, Race.ORC, Culture.SAURON, "Orc Pillager"); + } + + @Override + public List getAlwaysOnModifiers(PhysicalCard self) { + return Collections.singletonList( + new AbstractModifier(self, "For each Free Peoples card borne by a character this minion is skirmishing, that character is strength -1", + Filters.inSkirmishAgainst(Filters.sameCard(self)), new ModifierEffect[]{ModifierEffect.STRENGTH_MODIFIER}) { + @Override + public int getStrength(GameState gameState, ModifiersQuerying modifiersQuerying, PhysicalCard physicalCard, int result) { + return result - Filters.filter(gameState.getAttachedCards(physicalCard), gameState, modifiersQuerying, Filters.side(Side.FREE_PEOPLE)).size(); + } + }); + } +} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/sauron/Card3_097.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/sauron/Card3_097.java new file mode 100644 index 000000000..f0bc7cb78 --- /dev/null +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/sauron/Card3_097.java @@ -0,0 +1,46 @@ +package com.gempukku.lotro.cards.set3.sauron; + +import com.gempukku.lotro.cards.AbstractMinion; +import com.gempukku.lotro.cards.PlayConditions; +import com.gempukku.lotro.cards.costs.ExertCharactersCost; +import com.gempukku.lotro.cards.effects.ChooseAndWoundCharactersEffect; +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.timing.Action; + +import java.util.Collections; +import java.util.List; + +/** + * Set: Realms of Elf-lords + * Side: Shadow + * Culture: Sauron + * Twilight Cost: 1 + * Type: Minion • Orc + * Strength: 5 + * Vitality: 2 + * Site: 6 + * Game Text: Regroup: Exert this minion to wound a companion (except the Ring-bearer). + */ +public class Card3_097 extends AbstractMinion { + public Card3_097() { + super(1, 5, 2, 6, Race.ORC, Culture.SAURON, "Orc Slayer"); + } + + @Override + protected List getExtraPhaseActions(String playerId, LotroGame game, PhysicalCard self) { + if (PlayConditions.canUseShadowCardDuringPhase(game.getGameState(), Phase.REGROUP, self, 0) + && PlayConditions.canExert(self, game.getGameState(), game.getModifiersQuerying(), self)) { + ActivateCardAction action = new ActivateCardAction(self, Keyword.REGROUP); + action.appendCost( + new ExertCharactersCost(self, self)); + action.appendEffect( + new ChooseAndWoundCharactersEffect(action, playerId, 1, 1, Filters.type(CardType.COMPANION), Filters.not(Filters.keyword(Keyword.RING_BEARER)))); + return Collections.singletonList(action); + } + return null; + } +}