diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set8/shire/Card8_109.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set8/shire/Card8_109.java deleted file mode 100644 index 5f1e06984..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set8/shire/Card8_109.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.gempukku.lotro.cards.set8.shire; - -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.AddBurdenEffect; -import com.gempukku.lotro.logic.effects.PutCardsFromHandBeneathDrawDeckEffect; -import com.gempukku.lotro.logic.effects.RevealCardsFromYourHandEffect; -import com.gempukku.lotro.logic.effects.choose.ChooseAndExertCharactersEffect; -import com.gempukku.lotro.logic.timing.PlayConditions; - -import java.util.Collections; -import java.util.List; - -/** - * Set: Siege of Gondor - * Side: Free - * Culture: Shire - * Twilight Cost: 0 - * Type: Condition • Support Area - * Game Text: Regroup: Exert an unbound Hobbit and add a burden to reveal your hand. Place each Free Peoples card - * revealed this way beneath your draw deck. - */ -public class Card8_109 extends AbstractPermanent { - public Card8_109() { - super(Side.FREE_PEOPLE, 0, CardType.CONDITION, Culture.SHIRE, "Closer and Closer He Bent"); - } - - @Override - public List getPhaseActionsInPlay(String playerId, LotroGame game, PhysicalCard self) { - if (PlayConditions.canUseFPCardDuringPhase(game, Phase.REGROUP, self) - && PlayConditions.canExert(self, game, Filters.unboundCompanion, Race.HOBBIT)) { - ActivateCardAction action = new ActivateCardAction(self); - action.appendCost( - new ChooseAndExertCharactersEffect(action, playerId, 1, 1, Filters.unboundCompanion, Race.HOBBIT)); - action.appendCost( - new AddBurdenEffect(self.getOwner(), self, 1)); - action.appendEffect( - new RevealCardsFromYourHandEffect(self, playerId, game.getGameState().getHand(playerId))); - action.appendEffect( - new PutCardsFromHandBeneathDrawDeckEffect(action, playerId, true, Side.FREE_PEOPLE)); - return Collections.singletonList(action); - } - return null; - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set8/shire/Card8_110.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set8/shire/Card8_110.java deleted file mode 100644 index d3e464690..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set8/shire/Card8_110.java +++ /dev/null @@ -1,70 +0,0 @@ -package com.gempukku.lotro.cards.set8.shire; - -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.RequiredTriggerAction; -import com.gempukku.lotro.logic.cardtype.AbstractPermanent; -import com.gempukku.lotro.logic.effects.ChooseAndDiscardCardsFromHandEffect; -import com.gempukku.lotro.logic.effects.ForEachYouSpotEffect; -import com.gempukku.lotro.logic.effects.RemoveTwilightEffect; -import com.gempukku.lotro.logic.effects.SelfDiscardEffect; -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: Siege of Gondor - * Side: Free - * Culture: Shire - * Twilight Cost: 0 - * Type: Condition • Support Area - * Game Text: When the fellowship moves from site 4K, remove (1) for each Ring-bound companion you spot. - * Regroup: Discard a card from hand for each Ring-bound companion you spot. Discard this condition. - */ -public class Card8_110 extends AbstractPermanent { - public Card8_110() { - super(Side.FREE_PEOPLE, 0, CardType.CONDITION, Culture.SHIRE, "Morgai Foothills", null, true); - } - - @Override - public List getRequiredAfterTriggers(LotroGame game, EffectResult effectResult, PhysicalCard self) { - if (TriggerConditions.movesFrom(game, effectResult, Filters.siteBlock(SitesBlock.KING), Filters.siteNumber(4))) { - final RequiredTriggerAction action = new RequiredTriggerAction(self); - action.appendEffect( - new ForEachYouSpotEffect(game.getGameState().getCurrentPlayerId(), CardType.COMPANION, Keyword.RING_BOUND) { - @Override - protected void spottedCards(int spotCount) { - action.insertEffect( - new RemoveTwilightEffect(spotCount)); - } - }); - return Collections.singletonList(action); - } - return null; - } - - @Override - public List getPhaseActionsInPlay(final String playerId, LotroGame game, final PhysicalCard self) { - if (PlayConditions.canUseShadowCardDuringPhase(game, Phase.REGROUP, self, 0)) { - final ActivateCardAction action = new ActivateCardAction(self); - action.appendEffect( - new ForEachYouSpotEffect(game.getGameState().getCurrentPlayerId(), CardType.COMPANION, Keyword.RING_BOUND) { - @Override - protected void spottedCards(int spotCount) { - action.insertEffect( - new ChooseAndDiscardCardsFromHandEffect(action, playerId, false, spotCount)); - 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/set8/shire/Card8_111.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set8/shire/Card8_111.java deleted file mode 100644 index 664804fdf..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set8/shire/Card8_111.java +++ /dev/null @@ -1,52 +0,0 @@ -package com.gempukku.lotro.cards.set8.shire; - -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.AddThreatsEffect; -import com.gempukku.lotro.logic.effects.ForEachYouSpotEffect; -import com.gempukku.lotro.logic.effects.choose.ChooseAndAddUntilEOPStrengthBonusEffect; -import com.gempukku.lotro.logic.timing.PlayConditions; - -/** - * Set: Siege of Gondor - * Side: Free - * Culture: Shire - * Twilight Cost: 1 - * Type: Event • Skirmish - * Game Text: If the Shadow has initiative, add a threat to make an unbound Hobbit strength +1 for each [SHIRE] card - * you spot. - */ -public class Card8_111 extends AbstractEvent { - public Card8_111() { - super(Side.FREE_PEOPLE, 1, Culture.SHIRE, "So Fair, So Desperate", Phase.SKIRMISH); - } - - @Override - public boolean checkPlayRequirements(LotroGame game, PhysicalCard self) { - return PlayConditions.hasInitiative(game, Side.SHADOW) - && PlayConditions.canAddThreat(game, self, 1); - } - - @Override - public PlayEventAction getPlayEventCardAction(final String playerId, LotroGame game, final PhysicalCard self) { - final PlayEventAction action = new PlayEventAction(self); - action.appendCost( - new AddThreatsEffect(playerId, self, 1)); - action.appendEffect( - new ForEachYouSpotEffect(playerId, Culture.SHIRE) { - @Override - protected void spottedCards(int spotCount) { - action.appendEffect( - new ChooseAndAddUntilEOPStrengthBonusEffect(action, self, playerId, spotCount, Filters.unboundCompanion, Race.HOBBIT)); - } - }); - return action; - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set8/shire/Card8_112.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set8/shire/Card8_112.java deleted file mode 100644 index 589338f86..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set8/shire/Card8_112.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.gempukku.lotro.cards.set8.shire; - -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.AddTokenEffect; -import com.gempukku.lotro.logic.effects.AddUntilEndOfPhaseModifierEffect; -import com.gempukku.lotro.logic.effects.ChooseActiveCardEffect; -import com.gempukku.lotro.logic.effects.RemoveTokenEffect; -import com.gempukku.lotro.logic.effects.choose.ChooseAndExertCharactersEffect; -import com.gempukku.lotro.logic.modifiers.OverwhelmedByMultiplierModifier; -import com.gempukku.lotro.logic.timing.PlayConditions; - -import java.util.Collections; -import java.util.List; - -/** - * Set: Siege of Gondor - * Side: Free - * Culture: Shire - * Twilight Cost: 1 - * Type: Condition • Support Area - * Game Text: Fellowship: Exert a [SHIRE] companion and either a [ROHAN] companion or a [GANDALF] companion to add a - * [SHIRE] token here. Skirmish: Remove a [SHIRE] token here to prevent an unbound companion from being overwhelmed - * unless his or her strength is tripled. - */ -public class Card8_112 extends AbstractPermanent { - public Card8_112() { - super(Side.FREE_PEOPLE, 1, CardType.CONDITION, Culture.SHIRE, "Song of the Shire"); - } - - @Override - public List getPhaseActionsInPlay(String playerId, LotroGame game, final PhysicalCard self) { - if (PlayConditions.canUseFPCardDuringPhase(game, Phase.FELLOWSHIP, self) - && PlayConditions.canExert(self, game, Culture.SHIRE, CardType.COMPANION) - && PlayConditions.canExert(self, game, CardType.COMPANION, Filters.or(Culture.ROHAN, Culture.GANDALF))) { - ActivateCardAction action = new ActivateCardAction(self); - action.appendCost( - new ChooseAndExertCharactersEffect(action, playerId, 1, 1, Culture.SHIRE, CardType.COMPANION)); - action.appendCost( - new ChooseAndExertCharactersEffect(action, playerId, 1, 1, CardType.COMPANION, Filters.or(Culture.ROHAN, Culture.GANDALF))); - action.appendEffect( - new AddTokenEffect(self, self, Token.SHIRE)); - return Collections.singletonList(action); - } - if (PlayConditions.canUseFPCardDuringPhase(game, Phase.SKIRMISH, self) - && PlayConditions.canRemoveTokens(game, self, Token.SHIRE, 1)) { - final ActivateCardAction action = new ActivateCardAction(self); - action.appendCost( - new RemoveTokenEffect(self, self, Token.SHIRE)); - action.appendEffect( - new ChooseActiveCardEffect(self, playerId, "Choose unbound companion", Filters.unboundCompanion) { - @Override - protected void cardSelected(LotroGame game, PhysicalCard card) { - action.insertEffect( - new AddUntilEndOfPhaseModifierEffect( - new OverwhelmedByMultiplierModifier(self, card, 3))); - } - }); - return Collections.singletonList(action); - } - return null; - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set8/shire/Card8_113.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set8/shire/Card8_113.java deleted file mode 100644 index 43da48568..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set8/shire/Card8_113.java +++ /dev/null @@ -1,55 +0,0 @@ -package com.gempukku.lotro.cards.set8.shire; - -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.cardtype.AbstractAttachableFPPossession; -import com.gempukku.lotro.logic.effects.AddThreatsEffect; -import com.gempukku.lotro.logic.effects.choose.ChooseAndDiscardCardsFromPlayEffect; -import com.gempukku.lotro.logic.timing.EffectResult; -import com.gempukku.lotro.logic.timing.PlayConditions; - -import java.util.Collections; -import java.util.List; - -/** - * Set: Siege of Gondor - * Side: Free - * Culture: Shire - * Twilight Cost: 1 - * Type: Possession • Hand Weapon - * Strength: +2 - * Game Text: Bearer must be Frodo or Sam. Response: If a fierce skirmish involving bearer is about to end, add a threat - * to discard a minion involved in that skirmish. - */ -public class Card8_113 extends AbstractAttachableFPPossession { - public Card8_113() { - super(1, 2, 0, Culture.SHIRE, PossessionClass.HAND_WEAPON, "Sting", "Bane of the Eight Legs", true); - } - - @Override - public Filterable getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self) { - return Filters.or(Filters.frodo, Filters.sam); - } - - @Override - public List getOptionalInPlayAfterActions(String playerId, LotroGame game, EffectResult effectResult, PhysicalCard self) { - if (effectResult.getType() == EffectResult.Type.SKIRMISH_ABOUT_TO_END - && Filters.inSkirmish.accepts(game, self.getAttachedTo()) - && PlayConditions.canAddThreat(game, self, 1) - && game.getGameState().isFierceSkirmishes()) { - ActivateCardAction action = new ActivateCardAction(self); - action.appendCost( - new AddThreatsEffect(playerId, self, 1)); - action.appendEffect( - new ChooseAndDiscardCardsFromPlayEffect(action, playerId, 1, 1, CardType.MINION, Filters.inSkirmish)); - return Collections.singletonList(action); - } - return null; - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set8/shire/Card8_114.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set8/shire/Card8_114.java deleted file mode 100644 index e4586a232..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set8/shire/Card8_114.java +++ /dev/null @@ -1,47 +0,0 @@ -package com.gempukku.lotro.cards.set8.shire; - -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.ForEachYouSpotEffect; -import com.gempukku.lotro.logic.effects.RemoveTwilightEffect; -import com.gempukku.lotro.logic.effects.choose.ChooseAndExertCharactersEffect; -import com.gempukku.lotro.logic.timing.PlayConditions; - -/** - * Set: Siege of Gondor - * Side: Free - * Culture: Shire - * Twilight Cost: 0 - * Type: Event • Regroup - * Game Text: Exert Frodo to remove (1) for each Frodo signet you spot. - */ -public class Card8_114 extends AbstractEvent { - public Card8_114() { - super(Side.FREE_PEOPLE, 0, Culture.SHIRE, "Straining Towards Us", Phase.REGROUP); - } - - @Override - public boolean checkPlayRequirements(LotroGame game, PhysicalCard self) { - return PlayConditions.canExert(self, game, Filters.frodo); - } - - @Override - public PlayEventAction getPlayEventCardAction(String playerId, LotroGame game, PhysicalCard self) { - final PlayEventAction action = new PlayEventAction(self); - action.appendCost( - new ChooseAndExertCharactersEffect(action, playerId, 1, 1, Filters.frodo)); - action.appendEffect( - new ForEachYouSpotEffect(playerId, CardType.COMPANION, Signet.FRODO) { - @Override - protected void spottedCards(int spotCount) { - action.appendEffect( - new RemoveTwilightEffect(spotCount)); - } - }); - return action; - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set8/shire/Card8_115.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set8/shire/Card8_115.java deleted file mode 100644 index b2cea0060..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set8/shire/Card8_115.java +++ /dev/null @@ -1,54 +0,0 @@ -package com.gempukku.lotro.cards.set8.shire; - -import com.gempukku.lotro.common.CardType; -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.GameUtils; -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.ChooseAndWoundCharactersEffect; -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 com.gempukku.lotro.logic.timing.results.ExertResult; - -import java.util.Collections; -import java.util.List; - -/** - * Set: Siege of Gondor - * Side: Free - * Culture: Shire - * Twilight Cost: 0 - * Type: Event • Response - * Game Text: If a minion exerts, exert an unbound Hobbit to wound that minion. - */ -public class Card8_115 extends AbstractResponseEvent { - public Card8_115() { - super(Side.FREE_PEOPLE, 0, Culture.SHIRE, "Unheeded"); - } - - @Override - public List getPlayResponseEventAfterActions(String playerId, LotroGame game, EffectResult effectResult, PhysicalCard self) { - if (TriggerConditions.forEachExerted(game, effectResult, CardType.MINION) - && PlayConditions.canExert(self, game, Filters.unboundCompanion, Race.HOBBIT) - && PlayUtils.checkPlayRequirements(game, self, Filters.any, 0, 0, false, false)) { - ExertResult exertResult = (ExertResult) effectResult; - PlayEventAction action = new PlayEventAction(self); - final PhysicalCard exertedCard = exertResult.getExertedCard(); - action.setText("Wound " + GameUtils.getFullName(exertedCard)); - action.appendCost( - new ChooseAndExertCharactersEffect(action, playerId, 1, 1, Filters.unboundCompanion, Race.HOBBIT)); - action.appendEffect( - new ChooseAndWoundCharactersEffect(action, playerId, 1, 1, exertedCard)); - return Collections.singletonList(action); - } - return null; - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set8/shire/Card8_116.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set8/shire/Card8_116.java deleted file mode 100644 index 97cdf11eb..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set8/shire/Card8_116.java +++ /dev/null @@ -1,51 +0,0 @@ -package com.gempukku.lotro.cards.set8.shire; - -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.PlayUtils; -import com.gempukku.lotro.logic.actions.PlayEventAction; -import com.gempukku.lotro.logic.cardtype.AbstractResponseEvent; -import com.gempukku.lotro.logic.effects.choose.ChooseAndExertCharactersEffect; -import com.gempukku.lotro.logic.effects.choose.ChooseAndPutCardFromDiscardOnTopOfDeckEffect; -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: Siege of Gondor - * Side: Free - * Culture: Shire - * Twilight Cost: 0 - * Type: Event • Response - * Game Text: If the fellowship moves during the regroup phase, exert an unbound Hobbit to place a Shadow card from your - * discard pile on top of your draw deck. - */ -public class Card8_116 extends AbstractResponseEvent { - public Card8_116() { - super(Side.FREE_PEOPLE, 0, Culture.SHIRE, "We Shall Meet Again Soon"); - } - - @Override - public List getPlayResponseEventAfterActions(String playerId, LotroGame game, EffectResult effectResult, PhysicalCard self) { - if (TriggerConditions.moves(game, effectResult) - && PlayUtils.checkPlayRequirements(game, self, Filters.any, 0, 0, false, false) - && game.getGameState().getCurrentPhase() == Phase.REGROUP - && PlayConditions.canExert(self, game, Filters.unboundCompanion, Race.HOBBIT)) { - PlayEventAction action = new PlayEventAction(self); - action.appendCost( - new ChooseAndExertCharactersEffect(action, playerId, 1, 1, Filters.unboundCompanion, Race.HOBBIT)); - action.appendEffect( - new ChooseAndPutCardFromDiscardOnTopOfDeckEffect(action, playerId, 1, 1, Side.SHADOW)); - return Collections.singletonList(action); - } - return null; - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set8/shire/Card8_121.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set8/shire/Card8_121.java deleted file mode 100644 index 8fa2c5ee8..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set8/shire/Card8_121.java +++ /dev/null @@ -1,60 +0,0 @@ -package com.gempukku.lotro.cards.set8.shire; - -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.AddUntilEndOfPhaseModifierEffect; -import com.gempukku.lotro.logic.effects.ChooseAndDiscardCardsFromHandEffect; -import com.gempukku.lotro.logic.effects.ForEachYouSpotEffect; -import com.gempukku.lotro.logic.modifiers.StrengthModifier; -import com.gempukku.lotro.logic.timing.PlayConditions; - -import java.util.Collections; -import java.util.List; - -/** - * Set: Siege of Gondor - * Side: Free - * Culture: Shire - * Twilight Cost: 2 - * Type: Companion • Hobbit - * Strength: 5 - * Vitality: 4 - * Resistance: 6 - * Signet: Frodo - * Game Text: To play, spot a [ROHAN] companion. Skirmish: Discard 4 cards from hand to make Merry strength +2 for each - * [ROHAN] companion you spot. - */ -public class Card8_121 extends AbstractCompanion { - public Card8_121() { - super(2, 5, 4, 6, Culture.SHIRE, Race.HOBBIT, Signet.FRODO, "Merry", "Noble Warrior", true); - } - - @Override - public boolean checkPlayRequirements(LotroGame game, PhysicalCard self) { - return PlayConditions.canSpot(game, Culture.ROHAN, CardType.COMPANION); - } - - public List getPhaseActionsInPlay(String playerId, LotroGame game, final PhysicalCard self) { - if (PlayConditions.canUseFPCardDuringPhase(game, Phase.SKIRMISH, self) - && PlayConditions.canDiscardFromHand(game, playerId, 4, Filters.any)) { - final ActivateCardAction action = new ActivateCardAction(self); - action.appendCost( - new ChooseAndDiscardCardsFromHandEffect(action, playerId, false, 4)); - action.appendEffect( - new ForEachYouSpotEffect(playerId, Culture.ROHAN, CardType.COMPANION) { - @Override - protected void spottedCards(int spotCount) { - action.insertEffect( - new AddUntilEndOfPhaseModifierEffect( - new StrengthModifier(self, self, 2 * spotCount))); - } - }); - return Collections.singletonList(action); - } - return null; - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set8/shire/Card8_122.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set8/shire/Card8_122.java deleted file mode 100644 index 4d369cad0..000000000 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set8/shire/Card8_122.java +++ /dev/null @@ -1,52 +0,0 @@ -package com.gempukku.lotro.cards.set8.shire; - -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.ChooseAndWoundCharactersEffect; -import com.gempukku.lotro.logic.timing.PlayConditions; - -import java.util.Collections; -import java.util.List; - -/** - * Set: Siege of Gondor - * Side: Free - * Culture: Shire - * Twilight Cost: 2 - * Type: Companion • Hobbit - * Strength: 5 - * Vitality: 4 - * Resistance: 6 - * Signet: Frodo - * Game Text: To play, spot a [GONDOR] Man. Skirmish: Discard 4 cards from hand to wound a minion Pippin is skirmishing - * twice if that minion bears a fortification. - */ -public class Card8_122 extends AbstractCompanion { - public Card8_122() { - super(2, 5, 4, 6, Culture.SHIRE, Race.HOBBIT, Signet.FRODO, "Pippin", "Guard of Minas Tirith", true); - } - - @Override - public boolean checkPlayRequirements(LotroGame game, PhysicalCard self) { - return PlayConditions.canSpot(game, Culture.GONDOR, Race.MAN); - } - - @Override - public List getPhaseActionsInPlay(final String playerId, final LotroGame game, final PhysicalCard self) { - if (PlayConditions.canUseFPCardDuringPhase(game, Phase.SKIRMISH, self) - && PlayConditions.canDiscardFromHand(game, playerId, 4, Filters.any)) { - final ActivateCardAction action = new ActivateCardAction(self); - action.appendCost( - new ChooseAndDiscardCardsFromHandEffect(action, playerId, false, 4)); - action.appendEffect( - new ChooseAndWoundCharactersEffect(action, playerId, 1, 1, 2, CardType.MINION, Filters.inSkirmishAgainst(self), Filters.hasAttached(Keyword.FORTIFICATION))); - return Collections.singletonList(action); - } - return null; - } -} diff --git a/gemp-lotr/gemp-lotr-cards/src/main/resources/card-stubs/set08-Shire.hjson b/gemp-lotr/gemp-lotr-cards/src/main/resources/cards/official/set08/set08-Shire.hjson similarity index 59% rename from gemp-lotr/gemp-lotr-cards/src/main/resources/card-stubs/set08-Shire.hjson rename to gemp-lotr/gemp-lotr-cards/src/main/resources/cards/official/set08/set08-Shire.hjson index 7ce4602ba..73506e614 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/resources/card-stubs/set08-Shire.hjson +++ b/gemp-lotr/gemp-lotr-cards/src/main/resources/cards/official/set08/set08-Shire.hjson @@ -22,17 +22,31 @@ twilight: 0 type: Condition keywords: Support Area - /*requires: { - - } effects: [ - { - - } - { - - } - ]*/ + { + type: activated + phase: regroup + cost: [ + { + type: exert + filter: choose(unbound,hobbit) + } + { + type: addBurdens + } + ] + effect: [ + { + type: revealHand + hand: free people + } + { + type: putCardsFromHandOnBottomOfDeck + filter: all(side(free people)) + } + ] + } + ] gametext: Regroup: Exert an unbound Hobbit and add a burden to reveal your hand. Place each Free Peoples card revealed this way beneath your draw deck. lore: Pippin sat with his knees drawn up and the ball between them. He bent low over it, looking like a greedy child stooping over a bowl of food. promotext: "" @@ -66,17 +80,52 @@ twilight: 0 type: Condition keywords: Support Area - /*requires: { - - } effects: [ - { - - } - { - - } - ]*/ + { + type: trigger + trigger: { + type: movesFrom + filter: siteBlock(king),siteNumber(4) + } + effect: [ + { + type: chooseHowManyToSpot + filter: ringBound,companion + memorize: spotCount + } + { + type: removeTwilight + amount: { + type: fromMemory + memory: spotCount + } + } + ] + } + { + type: activated + phase: regroup + effect: [ + { + type: discardFromHand + forced: false + filter: self + count: { + type: range + from: 0 + to: { + type: forEachYouCanSpot + filter: ringBound,companion + } + } + } + { + type: discard + filter: self + } + ] + } + ] gametext: When the fellowship moves from site 4[K], remove (1) for each Ring-bound companion you spot.
Regroup: Discard a card from hand for each Ring-bound companion you spot. Discard this condition. lore: "" promotext: "" @@ -110,20 +159,28 @@ twilight: 1 type: Event keywords: Skirmish - /*requires: { - - } - */ effects: { type: event + requires: { + type: haveInitiative + side: shadow + } cost: { - type: SendMessage - text: Placeholder effect for development. - }, + type: addThreats + } effect: [ { - type: SendMessage - text: Placeholder effect for development. + type: chooseHowManyToSpot + filter: culture(shire) + memorize: spotCount + } + { + type: modifyStrength + filter: choose(unbound,hobbit) + amount: { + type: fromMemory + memory: spotCount + } } ] } @@ -160,17 +217,41 @@ twilight: 1 type: Condition keywords: Support Area - /*requires: { - - } effects: [ - { - - } - { - - } - ]*/ + { + type: activated + phase: fellowship + cost: [ + { + type: exert + filter: choose(culture(shire),companion) + } + { + type: exert + filter: choose(or(culture(rohan),culture(gandalf)),companion) + } + ] + effect: { + type: addTokens + culture: shire + filter: self + } + } + { + type: activated + phase: skirmish + cost: { + type: removeTokens + culture: shire + filter: self + } + effect: { + type: alterOverwhelmMultiplier + filter: choose(unbound,companion) + multiplier: 3 + } + } + ] gametext: Fellowship: Exert a [shire] companion and either a [rohan] companion or a [gandalf] companion to add a [shire] token here.
Skirmish: Remove a [shire] token here to prevent an unbound companion from being overwhelmed unless his or her strength is tripled. lore: "" promotext: "" @@ -206,18 +287,26 @@ type: Possession strength: 2 itemclass: Hand weapon - #target: title(Frodo or Sam) - /*requires: { - - } + target: or(title(Frodo),title(Sam)) effects: [ - { - - } - { - - } - ]*/ + { + type: activatedTrigger + trigger: { + type: skirmishAboutToEnd + involving: bearer + } + requires: { + type: fierceSkirmish + } + cost: { + type: addThreats + } + effect: { + type: discard + filter: choose(minion,inSkirmish) + } + } + ] gametext: Bearer must be Frodo or Sam.
Response: If a fierce skirmish involving bearer is about to end, add a threat to discard a minion involved in that skirmish. lore: No such anguish had Shelob ever known, or dreamed of knowing.... promotext: "" @@ -251,20 +340,24 @@ twilight: 0 type: Event keywords: Regroup - /*requires: { - - } - */ effects: { type: event cost: { - type: SendMessage - text: Placeholder effect for development. + type: exert + filter: choose(name(Frodo)) }, effect: [ { - type: SendMessage - text: Placeholder effect for development. + type: chooseHowManyToSpot + filter: signet(Frodo) + memorize: spotCount + } + { + type: removeTwilight + amount: { + type: fromMemory + memory: spotCount + } } ] } @@ -301,26 +394,25 @@ twilight: 0 type: Event keywords: Response - /*requires: { - - } - */ effects: { type: responseEvent trigger: { - + type: exerts + filter: minion + memorize: exertedMinion } + text: Wound {exertedMinion} cost: { - type: SendMessage - text: Placeholder effect for development. + type: exert + filter: choose(unbound,hobbit) } effect: [ { - type: SendMessage - text: Placeholder effect for development. + type: wound + filter: memory(exertedMinion) } ] - ] + } gametext: If a minion exerts, exert an unbound Hobbit to wound that minion. lore: ...and passing up beneath the hauberk had pierced the sinew behind his mighty knee. promotext: "" @@ -354,26 +446,26 @@ twilight: 0 type: Event keywords: Response - /*requires: { - - } - */ effects: { type: responseEvent trigger: { - + type: moves + } + requires: { + type: phase + phase: regroup } cost: { - type: SendMessage - text: Placeholder effect for development. + type: exert + filter: choose(unbound,hobbit) } effect: [ { - type: SendMessage - text: Placeholder effect for development. + type: putCardsFromDiscardOnTopOfDeck + filter: choose(side(shadow)) } ] - ] + } gametext: If the fellowship moves during the regroup phase, exert an unbound Hobbit to place a Shadow card from your discard pile on top of your draw deck. lore: He said: Who are you?" I still did not answer, but it hurt me horribly; and he pressed me, so I said: "A hobbit."'" promotext: "" @@ -412,17 +504,40 @@ vitality: 4 signet: Frodo resistance: 6 - /*requires: { - - } effects: [ - { - - } - { - - } - ]*/ + { + type: toPlay + requires: { + type: canSpot + filter: culture(rohan),companion + } + } + { + type: activated + phase: skirmish + cost: { + type: discardFromHand + forced: false + count: 4 + } + effect: [ + { + type: chooseHowManyToSpot + filter: culture(rohan),companion + memorize: spotCount + } + { + type: modifyStrength + filter: self + amount: { + type: fromMemory + memory: spotCount + multiplier: 2 + } + } + ] + } + ] gametext: To play, spot a [rohan] companion.
Skirmish: Discard 4 cards from hand to make Merry strength +2 for each [rohan] companion you spot. lore: King's man! King's man!' his heart cried within him. promotext: "" @@ -461,17 +576,29 @@ vitality: 4 signet: Frodo resistance: 6 - /*requires: { - - } effects: [ - { - - } - { - - } - ]*/ + { + type: toPlay + requires: { + type: canSpot + filter: culture(gondor),man + } + } + { + type: activated + phase: skirmish + cost: { + type: discardFromHand + forced: false + count: 4 + } + effect: { + type: wound + filter: choose(minion,inSkirmishAgainst(self),hasAttached(fortification)) + times: 2 + } + } + ] gametext: To play, spot a [gondor] Man.
Skirmish: Discard 4 cards from hand to wound a minion Pippin is skirmishing twice if that minion bears a fortification. lore: You're in the service of the Steward of Gondor now. You'll do as you're told.' promotext: ""