diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set6/rohan/Card6_090.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set6/rohan/Card6_090.java deleted file mode 100644 index 3f99137f7..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set6/rohan/Card6_090.java +++ /dev/null @@ -1,68 +0,0 @@ -package com.gempukku.lotro.cards.set6.rohan; - -import com.gempukku.lotro.common.CardType; -import com.gempukku.lotro.common.Culture; -import com.gempukku.lotro.common.Filterable; -import com.gempukku.lotro.common.PossessionClass; -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.OptionalTriggerAction; -import com.gempukku.lotro.logic.cardtype.AbstractAttachableFPPossession; -import com.gempukku.lotro.logic.effects.LiberateASiteEffect; -import com.gempukku.lotro.logic.effects.SelfDiscardEffect; -import com.gempukku.lotro.logic.effects.choose.ChooseAndExertCharactersEffect; -import com.gempukku.lotro.logic.timing.EffectResult; -import com.gempukku.lotro.logic.timing.PlayConditions; -import com.gempukku.lotro.logic.timing.TriggerConditions; - -import java.util.Collections; -import java.util.List; - -/** - * Set: Ents of Fangorn - * Side: Free - * Culture: Rohan - * Twilight Cost: 1 - * Type: Possession • Hand Weapon - * Game Text: Bearer must be a [ROHAN] companion. Each time bearer wins a skirmish, you may exert a minion. - * Response: If bearer wins a skirmish, discard this possession to liberate a site. - */ -public class Card6_090 extends AbstractAttachableFPPossession { - public Card6_090() { - super(1, 0, 0, Culture.ROHAN, PossessionClass.HAND_WEAPON, "Banner of the Mark"); - } - - @Override - public Filterable getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self) { - return Filters.and(Culture.ROHAN, CardType.COMPANION); - } - - @Override - public List getOptionalAfterTriggers(String playerId, LotroGame game, EffectResult effectResult, PhysicalCard self) { - if (TriggerConditions.winsSkirmish(game, effectResult, self.getAttachedTo())) { - OptionalTriggerAction action = new OptionalTriggerAction(self); - action.setText("Exert a minion"); - action.appendEffect( - new ChooseAndExertCharactersEffect(action, playerId, 1, 1, CardType.MINION)); - return Collections.singletonList(action); - } - return null; - } - - @Override - public List getOptionalInPlayAfterActions(String playerId, LotroGame game, EffectResult effectResult, PhysicalCard self) { - if (TriggerConditions.winsSkirmish(game, effectResult, self.getAttachedTo()) - && PlayConditions.canSelfDiscard(self, game)) { - ActivateCardAction action = new ActivateCardAction(self); - action.setText("Discard this to liberate a site"); - action.appendCost( - new SelfDiscardEffect(self)); - action.appendEffect( - new LiberateASiteEffect(self, playerId, null)); - return Collections.singletonList(action); - } - return null; - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set6/rohan/Card6_091.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set6/rohan/Card6_091.java deleted file mode 100644 index 78333009c..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set6/rohan/Card6_091.java +++ /dev/null @@ -1,51 +0,0 @@ -package com.gempukku.lotro.cards.set6.rohan; - -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.choose.ChooseAndDiscardCardsFromPlayEffect; -import com.gempukku.lotro.logic.modifiers.OverwhelmedByMultiplierModifier; -import com.gempukku.lotro.logic.timing.PlayConditions; - -import java.util.*; - -/** - * Set: Ents of Fangorn - * Side: Free - * Culture: Rohan - * Twilight Cost: 1 - * Type: Condition - * Game Text: Plays to your support area. Skirmish: Discard a mount borne by a [ROHAN] Man to prevent that Man from - * being overwhelmed unless his or her strength is tripled. - */ -public class Card6_091 extends AbstractPermanent { - public Card6_091() { - super(Side.FREE_PEOPLE, 1, CardType.CONDITION, Culture.ROHAN, "Blood Has Been Spilled"); - } - - @Override - public List getPhaseActionsInPlay(String playerId, LotroGame game, final PhysicalCard self) { - if (PlayConditions.canUseFPCardDuringPhase(game, Phase.SKIRMISH, self) - && PlayConditions.canDiscardFromPlay(self, game, PossessionClass.MOUNT, Filters.attachedTo(Culture.ROHAN, Race.MAN))) { - final ActivateCardAction action = new ActivateCardAction(self); - action.appendCost( - new ChooseAndDiscardCardsFromPlayEffect(action, playerId, 1, 1, PossessionClass.MOUNT, Filters.attachedTo(Culture.ROHAN, Race.MAN)) { - @Override - protected void cardsToBeDiscardedCallback(Collection cards) { - Set affectedCharacters = new HashSet<>(); - for (PhysicalCard card : cards) - affectedCharacters.add(card.getAttachedTo()); - action.appendEffect( - new AddUntilEndOfPhaseModifierEffect( - new OverwhelmedByMultiplierModifier(self, Filters.in(affectedCharacters), 3))); - } - }); - return Collections.singletonList(action); - } - return null; - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set6/rohan/Card6_092.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set6/rohan/Card6_092.java deleted file mode 100644 index 6f295e6a3..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set6/rohan/Card6_092.java +++ /dev/null @@ -1,66 +0,0 @@ -package com.gempukku.lotro.cards.set6.rohan; - -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.AbstractCompanion; -import com.gempukku.lotro.logic.effects.ChooseAndDiscardCardsFromHandEffect; -import com.gempukku.lotro.logic.effects.choose.ChooseAndAddUntilEOPStrengthBonusEffect; -import com.gempukku.lotro.logic.modifiers.evaluator.Evaluator; -import com.gempukku.lotro.logic.timing.PlayConditions; - -import java.util.Collections; -import java.util.List; - -/** - * Set: Ents of Fangorn - * Side: Free - * Culture: Rohan - * Twilight Cost: 3 - * Type: Companion • Man - * Strength: 7 - * Vitality: 3 - * Resistance: 6 - * Signet: Gandalf - * Game Text: Valiant. While you can spot a [ROHAN] Man, Eomer's twilight cost is -1. Skirmish: Discard 3 cards from - * hand to make a [ROHAN] Man strength +2 for each wound on each minion in his or her skirmish. - */ -public class Card6_092 extends AbstractCompanion { - public Card6_092() { - super(3, 7, 3, 6, Culture.ROHAN, Race.MAN, Signet.GANDALF, Names.eomer, "Rohirrim Captain", true); - addKeyword(Keyword.VALIANT); - } - - @Override - public int getTwilightCostModifier(LotroGame game, PhysicalCard self, PhysicalCard target) { - if (Filters.canSpot(game, Culture.ROHAN, Race.MAN)) - return -1; - return 0; - } - - @Override - public List getPhaseActionsInPlay(String playerId, LotroGame game, PhysicalCard self) { - if (PlayConditions.canUseFPCardDuringPhase(game, Phase.SKIRMISH, self) - && PlayConditions.canDiscardFromHand(game, playerId, 3, Filters.any)) { - ActivateCardAction action = new ActivateCardAction(self); - action.appendCost( - new ChooseAndDiscardCardsFromHandEffect(action, playerId, false, 3)); - action.appendEffect( - new ChooseAndAddUntilEOPStrengthBonusEffect(action, self, playerId, - new Evaluator() { - @Override - public int evaluateExpression(LotroGame game, PhysicalCard self) { - int wounds = 0; - for (PhysicalCard woundedMinion : Filters.filterActive(game, CardType.MINION, Filters.wounded, Filters.inSkirmishAgainst(self))) { - wounds += game.getGameState().getWounds(woundedMinion); - } - return wounds * 2; - } - }, Culture.ROHAN, Race.MAN)); - return Collections.singletonList(action); - } - return null; - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set6/rohan/Card6_093.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set6/rohan/Card6_093.java deleted file mode 100644 index 09449afe2..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set6/rohan/Card6_093.java +++ /dev/null @@ -1,40 +0,0 @@ -package com.gempukku.lotro.cards.set6.rohan; - -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.ChooseAndDiscardCardsFromPlayEffect; -import com.gempukku.lotro.logic.effects.choose.ChooseAndExertCharactersEffect; -import com.gempukku.lotro.logic.timing.PlayConditions; - -/** - * Set: Ents of Fangorn - * Side: Free - * Culture: Rohan - * Twilight Cost: 0 - * Type: Event - * Game Text: Regroup: Exert 2 mounted [ROHAN] Men to discard up to 2 wounded minions. - */ -public class Card6_093 extends AbstractEvent { - public Card6_093() { - super(Side.FREE_PEOPLE, 0, Culture.ROHAN, "Ever the Hope of Men", Phase.REGROUP); - } - - @Override - public boolean checkPlayRequirements(LotroGame game, PhysicalCard self) { - return PlayConditions.canExert(self, game, 1, 2, Culture.ROHAN, Race.MAN, Filters.mounted); - } - - @Override - public PlayEventAction getPlayEventCardAction(String playerId, LotroGame game, PhysicalCard self) { - PlayEventAction action = new PlayEventAction(self); - action.appendCost( - new ChooseAndExertCharactersEffect(action, playerId, 2, 2, Culture.ROHAN, Race.MAN, Filters.mounted)); - action.appendEffect( - new ChooseAndDiscardCardsFromPlayEffect(action, playerId, 0, 2, CardType.MINION, Filters.wounded)); - return action; - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set6/rohan/Card6_094.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set6/rohan/Card6_094.java deleted file mode 100644 index f4b9dbb6d..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set6/rohan/Card6_094.java +++ /dev/null @@ -1,54 +0,0 @@ -package com.gempukku.lotro.cards.set6.rohan; - -import com.gempukku.lotro.common.CardType; -import com.gempukku.lotro.common.Culture; -import com.gempukku.lotro.common.Phase; -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.ActivateCardAction; -import com.gempukku.lotro.logic.cardtype.AbstractCompanion; -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: Ents of Fangorn - * Side: Free - * Culture: Rohan - * Twilight Cost: 2 - * Type: Companion • Man - * Strength: 6 - * Vitality: 3 - * Resistance: 6 - * Game Text: To play, spot a [ROHAN] Man. Skirmish: Exert Hama to discard a possession borne by a minion he - * is skirmishing. - */ -public class Card6_094 extends AbstractCompanion { - public Card6_094() { - super(2, 6, 3, 6, Culture.ROHAN, Race.MAN, null, "Háma", "Doorward of Théoden", true); - } - - @Override - public boolean checkPlayRequirements(LotroGame game, PhysicalCard self) { - return PlayConditions.canSpot(game, Culture.ROHAN, Race.MAN); - } - - @Override - public List getPhaseActionsInPlay(String playerId, LotroGame game, PhysicalCard self) { - if (PlayConditions.canUseFPCardDuringPhase(game, Phase.SKIRMISH, self) - && PlayConditions.canSelfExert(self, game)) { - ActivateCardAction action = new ActivateCardAction(self); - action.appendCost( - new SelfExertEffect(action, self)); - action.appendEffect( - new ChooseAndDiscardCardsFromPlayEffect(action, playerId, 1, 1, CardType.POSSESSION, Filters.attachedTo(CardType.MINION, Filters.inSkirmishAgainst(self)))); - return Collections.singletonList(action); - } - return null; - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set6/rohan/Card6_095.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set6/rohan/Card6_095.java deleted file mode 100644 index 7c3f32d74..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set6/rohan/Card6_095.java +++ /dev/null @@ -1,59 +0,0 @@ -package com.gempukku.lotro.cards.set6.rohan; - -import com.gempukku.lotro.common.CardType; -import com.gempukku.lotro.common.Culture; -import com.gempukku.lotro.common.Phase; -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.ActivateCardAction; -import com.gempukku.lotro.logic.cardtype.AbstractCompanion; -import com.gempukku.lotro.logic.effects.AddUntilEndOfPhaseModifierEffect; -import com.gempukku.lotro.logic.effects.ChooseAndHealCharactersEffect; -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: Ents of Fangorn - * Side: Free - * Culture: Rohan - * Twilight Cost: 2 - * Type: Companion • Man - * Strength: 6 - * Vitality: 3 - * Resistance: 6 - * Game Text: To play, spot a [ROHAN] Man. Skirmish: Heal a minion skirmishing Hrethel to make Hrethel strength +3 - * (limit +3). - */ -public class Card6_095 extends AbstractCompanion { - public Card6_095() { - super(2, 6, 3, 6, Culture.ROHAN, Race.MAN, null, "Hrethel", "Rider of Rohan", true); - } - - @Override - public boolean checkPlayRequirements(LotroGame game, PhysicalCard self) { - return PlayConditions.canSpot(game, Culture.ROHAN, Race.MAN); - } - - @Override - public List getPhaseActionsInPlay(String playerId, LotroGame game, PhysicalCard self) { - if (PlayConditions.canUseFPCardDuringPhase(game, Phase.SKIRMISH, self) - && PlayConditions.canHeal(self, game, CardType.MINION, Filters.inSkirmishAgainst(self))) { - ActivateCardAction action = new ActivateCardAction(self); - action.appendCost( - new ChooseAndHealCharactersEffect(action, playerId, 1, 1, CardType.MINION, Filters.inSkirmishAgainst(self))); - action.appendEffect( - new AddUntilEndOfPhaseModifierEffect( - new StrengthModifier(self, self, null, - new CardPhaseLimitEvaluator(game, self, Phase.SKIRMISH, new ConstantEvaluator(3), new ConstantEvaluator(3))))); - return Collections.singletonList(action); - } - return null; - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set6/rohan/Card6_096.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set6/rohan/Card6_096.java deleted file mode 100644 index fc1c56572..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set6/rohan/Card6_096.java +++ /dev/null @@ -1,59 +0,0 @@ -package com.gempukku.lotro.cards.set6.rohan; - -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.GameUtils; -import com.gempukku.lotro.logic.actions.PlayEventAction; -import com.gempukku.lotro.logic.cardtype.AbstractEvent; -import com.gempukku.lotro.logic.decisions.MultipleChoiceAwaitingDecision; -import com.gempukku.lotro.logic.effects.AddUntilEndOfTurnModifierEffect; -import com.gempukku.lotro.logic.effects.DrawCardsEffect; -import com.gempukku.lotro.logic.effects.PlayoutDecisionEffect; -import com.gempukku.lotro.logic.modifiers.MoveLimitModifier; -import com.gempukku.lotro.logic.timing.PlayConditions; - -/** - * Set: Ents of Fangorn - * Side: Free - * Culture: Rohan - * Twilight Cost: 2 - * Type: Event - * Game Text: Fellowship: Spot 3 mounted [ROHAN] Men to make the move limit for this turn +2. Each Shadow player may - * draw 6 cards. - */ -public class Card6_096 extends AbstractEvent { - public Card6_096() { - super(Side.FREE_PEOPLE, 2, Culture.ROHAN, "News From the Mark", Phase.FELLOWSHIP); - } - - @Override - public boolean checkPlayRequirements(LotroGame game, PhysicalCard self) { - return PlayConditions.canSpot(game, 3, Culture.ROHAN, Race.MAN, Filters.mounted); - } - - @Override - public PlayEventAction getPlayEventCardAction(String playerId, LotroGame game, PhysicalCard self) { - final PlayEventAction action = new PlayEventAction(self); - action.appendEffect( - new AddUntilEndOfTurnModifierEffect( - new MoveLimitModifier(self, 2))); - for (final String opponentId : GameUtils.getShadowPlayers(game)) { - action.appendEffect( - new PlayoutDecisionEffect(opponentId, - new MultipleChoiceAwaitingDecision(1, "Do you want to draw 6 cards?", new String[]{"Yes", "No"}) { - @Override - protected void validDecisionMade(int index, String result) { - if (index == 0) - action.insertEffect( - new DrawCardsEffect(action, opponentId, 6)); - } - })); - } - return action; - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set6/rohan/Card6_097.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set6/rohan/Card6_097.java deleted file mode 100644 index 4447f5615..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set6/rohan/Card6_097.java +++ /dev/null @@ -1,78 +0,0 @@ -package com.gempukku.lotro.cards.set6.rohan; - -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.actions.OptionalTriggerAction; -import com.gempukku.lotro.logic.cardtype.AbstractPermanent; -import com.gempukku.lotro.logic.effects.AddTokenEffect; -import com.gempukku.lotro.logic.effects.ChoiceEffect; -import com.gempukku.lotro.logic.effects.RemoveTokenEffect; -import com.gempukku.lotro.logic.effects.SelfDiscardEffect; -import com.gempukku.lotro.logic.effects.choose.ChooseAndAddUntilEOPStrengthBonusEffect; -import com.gempukku.lotro.logic.timing.Effect; -import com.gempukku.lotro.logic.timing.EffectResult; -import com.gempukku.lotro.logic.timing.PlayConditions; -import com.gempukku.lotro.logic.timing.TriggerConditions; - -import java.util.Collections; -import java.util.LinkedList; -import java.util.List; - -/** - * Set: Ents of Fangorn - * Side: Free - * Culture: Rohan - * Twilight Cost: 2 - * Type: Condition - * Game Text: Plays to your support area. When you play this condition, you may spot a [ROHAN] Man to place 2 [ROHAN] - * tokens here. Skirmish: Discard this condition or remove a [ROHAN] token from here to make a [ROHAN] Man skirmishing - * an exhausted minion strength +2. - */ -public class Card6_097 extends AbstractPermanent { - public Card6_097() { - super(Side.FREE_PEOPLE, 2, CardType.CONDITION, Culture.ROHAN, "We Left None Alive", null, true); - } - - @Override - public List getOptionalAfterTriggers(String playerId, LotroGame game, EffectResult effectResult, PhysicalCard self) { - if (TriggerConditions.played(game, effectResult, self) - && PlayConditions.canSpot(game, Culture.ROHAN, Race.MAN)) { - OptionalTriggerAction action = new OptionalTriggerAction(self); - action.appendEffect( - new AddTokenEffect(self, self, Token.ROHAN, 2)); - return Collections.singletonList(action); - } - return null; - } - - @Override - public List getPhaseActionsInPlay(String playerId, LotroGame game, PhysicalCard self) { - if (PlayConditions.canUseFPCardDuringPhase(game, Phase.SKIRMISH, self)) { - ActivateCardAction action = new ActivateCardAction(self); - List possibleCosts = new LinkedList<>(); - possibleCosts.add( - new RemoveTokenEffect(self, self, Token.ROHAN) { - @Override - public String getText(LotroGame game) { - return "Remove a ROHAN token from here"; - } - }); - possibleCosts.add( - new SelfDiscardEffect(self) { - @Override - public String getText(LotroGame game) { - return "Discard this condition"; - } - }); - action.appendCost( - new ChoiceEffect(action, playerId, possibleCosts)); - action.appendEffect( - new ChooseAndAddUntilEOPStrengthBonusEffect(action, self, playerId, 2, Culture.ROHAN, Race.MAN, Filters.inSkirmishAgainst(CardType.MINION, Filters.exhausted))); - return Collections.singletonList(action); - } - return null; - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/resources/card-stubs/set06-Rohan.hjson b/gemp-lotr/gemp-lotr-cards/src/main/resources/cards/official/set06/set06-Rohan.hjson similarity index 56% rename from gemp-lotr/gemp-lotr-cards/src/main/resources/card-stubs/set06-Rohan.hjson rename to gemp-lotr/gemp-lotr-cards/src/main/resources/cards/official/set06/set06-Rohan.hjson index 037a09b8e..59e36e5c5 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/resources/card-stubs/set06-Rohan.hjson +++ b/gemp-lotr/gemp-lotr-cards/src/main/resources/cards/official/set06/set06-Rohan.hjson @@ -22,18 +22,37 @@ twilight: 1 type: Possession itemclass: Hand weapon - #target: a [rohan] companion - /*requires: { - - } + target: culture(rohan),companion effects: [ - { - - } - { - - } - ]*/ + { + type: trigger + text: Exert a minion + optional: true + trigger: { + type: winsSkirmish + filter: bearer + } + effect: { + type: exert + filter: choose(minion) + } + } + { + type: activatedTrigger + text: Discard to liberate a site + trigger: { + type: winsSkirmish + filter: bearer + } + cost: { + type: discard + filter: self + } + effect: { + type: liberateSite + } + } + ] gametext: Bearer must be a [rohan] companion.
Each time bearer wins a skirmish, you may exert a minion.
Response: If bearer wins a skirmish, discard this possession to liberate a site. lore: Fell deeds awake. Now for wrath. Now for ruin, and the red dawn.' promotext: "" @@ -67,17 +86,34 @@ twilight: 1 type: Condition keywords: Support Area - /*requires: { - - } effects: [ - { - - } - { - - } - ]*/ + { + type: activated + phase: skirmish + cost: [ + { + type: chooseActiveCards + filter: choose(mount,attachedTo(culture(rohan),man),canBeDiscarded) + text: Choose cards to discard + memorize: chosenMount + } + { + type: memorizeActive + filter: hasAttached(memory(chosenMount)) + memory: chosenMan + } + { + type: discard + filter: memory(chosenMount) + } + ] + effect: { + type: alterOverwhelmMultiplier + filter: memory(chosenMan) + multiplier: 3 + } + } + ] gametext: Plays to your support area.
Skirmish: Discard a mount borne by a [rohan] Man to prevent that Man from being overwhelmed unless his or her strength is tripled. lore: They were hemming the Orcs in, preventing them from scattering, and driving them.... promotext: "" @@ -117,17 +153,35 @@ signet: Gandalf resistance: 6 keywords: Valiant - /*requires: { - - } effects: [ - { - - } - { - - } - ]*/ + { + type: modifyOwnCost + requires: { + type: canSpot + filter: culture(rohan),man + } + amount: -1 + } + { + type: activated + phase: skirmish + cost: { + type: discardFromHand + forced: false + count: 3 + } + effect: { + type: modifyStrength + filter: choose(culture(rohan),man) + memorize: chosenMan + amount: { + type: forEachWound + filter: minion,inSkirmishAgainst(memory(chosenMan)) + multiplier: 2 + } + } + } + ] gametext: Valiant. While you can spot a [rohan] Man, Éomer's twilight cost is -1.
Skirmish: Discard 3 cards from hand to make a [rohan] Man strength +2 for each wound on each minion in his or her skirmish. lore: Gúthwinë for the Mark!' promotext: "" @@ -161,20 +215,21 @@ twilight: 0 type: Event keywords: Regroup - /*requires: { - - } effects: { type: event cost: { - + type: exert + filter: choose(mounted,culture(rohan),man) + count: 2 }, effect: [ { - + type: discard + filter: choose(wounded,minion) + count: 0-2 } ] - }*/ + } gametext: Regroup: Exert 2 mounted [rohan] Men to discard up to 2 wounded minions. lore: Would that day was here and we might ride down upon them like a storm out of the mountains!' promotext: "" @@ -212,17 +267,27 @@ strength: 6 vitality: 3 resistance: 6 - /*requires: { - - } effects: [ - { - - } - { - - } - ]*/ + { + type: toPlay + requires: { + type: canSpot + filter: culture(rohan),man + } + } + { + type: activated + phase: skirmish + cost: { + type: exert + filter: self + } + effect: { + type: discard + filter: choose(possession,attachedTo(minion,inSkirmishAgainst(self))) + } + } + ] gametext: To play, spot a [rohan] Man.
Skirmish: Exert Háma to discard a possession borne by a minion he is skirmishing. lore: Yet in doubt a man of worth will trust to his own wisdom. I believe you are friends and folk worthy of honour, who have no evil purpose.' promotext: "" @@ -260,17 +325,32 @@ strength: 6 vitality: 3 resistance: 6 - /*requires: { - - } effects: [ - { - - } - { - - } - ]*/ + { + type: toPlay + requires: { + type: canSpot + filter: culture(rohan),man + } + } + { + type: activated + phase: skirmish + cost: { + type: heal + filter: choose(minion,inSkirmishAgainst(self)) + } + effect: { + type: modifyStrength + filter: self + amount: { + type: cardPhaseLimit + limit: 3 + amount: 3 + } + } + } + ] gametext: To play, spot a [rohan] Man.
Skirmish: Heal a minion skirmishing Hrethel to make Hrethel strength +3 (limit +3). lore: ...gaining on the Orcs, gaining on them like a tide over the flats on folk straying in a quicksand. promotext: "" @@ -304,20 +384,34 @@ twilight: 2 type: Event keywords: Fellowship - /*requires: { - - } effects: { type: event - cost: { - - }, + requires: { + type: canSpot + filter: mounted,culture(rohan),man + count: 3 + } effect: [ { - + type: addModifier + modifier: { + type: modifyMoveLimit + amount: 2 + } + until: endOfTurn + } + { + type: optional + player: shadow + text: Would you like to draw 6 cards? + effect: { + type: drawCards + player: shadow + count: 6 + } } ] - }*/ + } gametext: Fellowship: Spot 3 mounted [rohan] Men to make the move limit for this turn +2. Each Shadow player may draw 6 cards. lore: We are friends of Rohan, and of Théoden, your king.' promotext: "" @@ -351,17 +445,53 @@ twilight: 2 type: Condition keywords: Support Area - /*requires: { - - } effects: [ - { - - } - { - - } - ]*/ + { + type: trigger + optional: true + trigger: { + type: played + filter: self + } + requires: { + type: canSpot + filter: culture(rohan),man + } + effect: { + type: addTokens + culture: raider + filter: self + count: 2 + } + } + { + type: activated + phase: skirmish + cost: { + type: choice + texts: [ + Discard this condition + Remove a {rohan} token from here + ] + effects: [ + { + type: discard + filter: self + } + { + type: removeTokens + culture: rohan + filter: self + } + ] + } + effect: { + type: modifyStrength + filter: choose(culture(rohan),man,inSkirmishAgainst(exhausted,minion)) + amount: 2 + } + } + ] gametext: Plays to your support area. When you play this condition, you may spot a [rohan] Man to place 2 [rohan] tokens here.
Skirmish: Discard this condition or remove a [rohan] token from here to make a [rohan] Man skirmishing an exhausted minion strength +2. lore: "" promotext: "" diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/filter/FilterFactory.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/filter/FilterFactory.java index 3396d9604..323a3ddfd 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/filter/FilterFactory.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/filter/FilterFactory.java @@ -41,6 +41,7 @@ public class FilterFactory { }); simpleFilters.put("bearer", (actionContext -> Filters.hasAttached(actionContext.getSource()))); simpleFilters.put("character", (actionContext) -> Filters.character); + simpleFilters.put("canbediscarded", (actionContext -> Filters.canBeDiscarded(actionContext.getPerformingPlayer(), actionContext.getSource()))); simpleFilters.put("canbereturnedtohand", (actionContext -> Filters.canBeReturnedToHand(actionContext.getSource()))); simpleFilters.put("canexert", (actionContext -> Filters.canExert(actionContext.getSource()))); simpleFilters.put("controlledbyotherplayer",