Migrated Gollum cards in set 12 to hjson
This commit is contained in:
@@ -1,69 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set12.gollum;
|
||||
|
||||
import com.gempukku.lotro.common.CardType;
|
||||
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.actions.RequiredTriggerAction;
|
||||
import com.gempukku.lotro.logic.cardtype.AbstractPermanent;
|
||||
import com.gempukku.lotro.logic.effects.ChoiceEffect;
|
||||
import com.gempukku.lotro.logic.effects.ChooseAndWoundCharactersEffect;
|
||||
import com.gempukku.lotro.logic.effects.SelfDiscardEffect;
|
||||
import com.gempukku.lotro.logic.modifiers.Modifier;
|
||||
import com.gempukku.lotro.logic.modifiers.SpotCondition;
|
||||
import com.gempukku.lotro.logic.modifiers.TwilightCostModifier;
|
||||
import com.gempukku.lotro.logic.timing.Effect;
|
||||
import com.gempukku.lotro.logic.timing.EffectResult;
|
||||
import com.gempukku.lotro.logic.timing.TriggerConditions;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Set: Black Rider
|
||||
* Side: Free
|
||||
* Culture: Gollum
|
||||
* Twilight Cost: 0
|
||||
* Type: Condition • Support Area
|
||||
* Game Text: While you can spot Smeagol, the Shadow number of each site is -1. Each time the fellowship moves, wound
|
||||
* a companion or discard this condition.
|
||||
*/
|
||||
public class Card12_037 extends AbstractPermanent {
|
||||
public Card12_037() {
|
||||
super(Side.FREE_PEOPLE, 0, CardType.CONDITION, Culture.GOLLUM, "Come Away");
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends Modifier> getInPlayModifiers(LotroGame game, PhysicalCard self) {
|
||||
return Collections.singletonList(new TwilightCostModifier(self, CardType.SITE, new SpotCondition(Filters.smeagol), -1));
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<RequiredTriggerAction> getRequiredAfterTriggers(LotroGame game, EffectResult effectResult, PhysicalCard self) {
|
||||
if (TriggerConditions.moves(game, effectResult)) {
|
||||
RequiredTriggerAction action = new RequiredTriggerAction(self);
|
||||
List<Effect> possibleEffects = new LinkedList<>();
|
||||
possibleEffects.add(
|
||||
new ChooseAndWoundCharactersEffect(action, self.getOwner(), 1, 1, CardType.COMPANION) {
|
||||
@Override
|
||||
public String getText(LotroGame game) {
|
||||
return "Wound a companion";
|
||||
}
|
||||
});
|
||||
possibleEffects.add(
|
||||
new SelfDiscardEffect(self) {
|
||||
@Override
|
||||
public String getText(LotroGame game) {
|
||||
return "Discard this condition";
|
||||
}
|
||||
});
|
||||
action.appendEffect(
|
||||
new ChoiceEffect(action, self.getOwner(), possibleEffects));
|
||||
return Collections.singletonList(action);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -1,58 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set12.gollum;
|
||||
|
||||
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.PlayUtils;
|
||||
import com.gempukku.lotro.logic.actions.PlayEventAction;
|
||||
import com.gempukku.lotro.logic.actions.PlayPermanentAction;
|
||||
import com.gempukku.lotro.logic.cardtype.AbstractEvent;
|
||||
import com.gempukku.lotro.logic.effects.ChooseArbitraryCardsEffect;
|
||||
import com.gempukku.lotro.logic.effects.RevealTopCardsOfDrawDeckEffect;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Set: Black Rider
|
||||
* Side: Shadow
|
||||
* Culture: Gollum
|
||||
* Twilight Cost: 0
|
||||
* Type: Event • Shadow
|
||||
* Game Text: Spot X [GOLLUM] cards to reveal the top X cards of your draw deck. You may play a revealed minion. Its
|
||||
* twilight cost is -2.
|
||||
*/
|
||||
public class Card12_038 extends AbstractEvent {
|
||||
public Card12_038() {
|
||||
super(Side.SHADOW, 0, Culture.GOLLUM, "From Deep in Shadow", Phase.SHADOW);
|
||||
}
|
||||
|
||||
@Override
|
||||
public PlayEventAction getPlayEventCardAction(final String playerId, final LotroGame game, PhysicalCard self) {
|
||||
final PlayEventAction action = new PlayEventAction(self);
|
||||
int count = Filters.countActive(game, Culture.GOLLUM);
|
||||
action.appendEffect(
|
||||
new RevealTopCardsOfDrawDeckEffect(self, playerId, count) {
|
||||
@Override
|
||||
protected void cardsRevealed(List<PhysicalCard> revealedCards) {
|
||||
action.appendEffect(
|
||||
new ChooseArbitraryCardsEffect(playerId, "Choose minion to play", revealedCards, Filters.and(CardType.MINION, Filters.playable(game, -2)), 0, 1) {
|
||||
@Override
|
||||
protected void cardsSelected(LotroGame game, Collection<PhysicalCard> selectedCards) {
|
||||
if (selectedCards.size() > 0) {
|
||||
final PhysicalCard selectedCard = selectedCards.iterator().next();
|
||||
PlayPermanentAction action = (PlayPermanentAction) PlayUtils.getPlayCardAction(game, selectedCard, -2, Filters.any, false);
|
||||
action.skipShufflingDeck();
|
||||
game.getActionsEnvironment().addActionToStack(action);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
return action;
|
||||
}
|
||||
}
|
||||
@@ -1,45 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set12.gollum;
|
||||
|
||||
import com.gempukku.lotro.logic.cardtype.AbstractPermanent;
|
||||
import com.gempukku.lotro.logic.timing.PlayConditions;
|
||||
import com.gempukku.lotro.logic.timing.TriggerConditions;
|
||||
import com.gempukku.lotro.logic.effects.choose.ChooseAndPutCardFromDiscardIntoHandEffect;
|
||||
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.OptionalTriggerAction;
|
||||
import com.gempukku.lotro.logic.effects.ChooseAndDiscardCardsFromHandEffect;
|
||||
import com.gempukku.lotro.logic.timing.EffectResult;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Set: Black Rider
|
||||
* Side: Shadow
|
||||
* Culture: Gollum
|
||||
* Twilight Cost: 3
|
||||
* Type: Condition • Support Area
|
||||
* Game Text: Each time the fellowship moves to a mountain or underground site, you may discard a [GOLLUM] event from
|
||||
* hand to take a minion from your discard pile into hand.
|
||||
*/
|
||||
public class Card12_039 extends AbstractPermanent {
|
||||
public Card12_039() {
|
||||
super(Side.SHADOW, 3, CardType.CONDITION, Culture.GOLLUM, "Not Alone");
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<OptionalTriggerAction> getOptionalAfterTriggers(String playerId, LotroGame game, EffectResult effectResult, PhysicalCard self) {
|
||||
if (TriggerConditions.movesTo(game, effectResult, Filters.or(Keyword.MOUNTAIN, Keyword.UNDERGROUND))
|
||||
&& PlayConditions.canDiscardFromHand(game, playerId, 1, Culture.GOLLUM, CardType.EVENT)) {
|
||||
OptionalTriggerAction action = new OptionalTriggerAction(self);
|
||||
action.appendCost(
|
||||
new ChooseAndDiscardCardsFromHandEffect(action, playerId, false, 1, Culture.GOLLUM, CardType.EVENT));
|
||||
action.appendEffect(
|
||||
new ChooseAndPutCardFromDiscardIntoHandEffect(action, playerId, 1, 1, CardType.MINION));
|
||||
return Collections.singletonList(action);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -1,58 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set12.gollum;
|
||||
|
||||
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.cardtype.AbstractPermanent;
|
||||
import com.gempukku.lotro.logic.effects.PlaySiteEffect;
|
||||
import com.gempukku.lotro.logic.effects.SelfDiscardEffect;
|
||||
import com.gempukku.lotro.logic.modifiers.Modifier;
|
||||
import com.gempukku.lotro.logic.modifiers.StrengthModifier;
|
||||
import com.gempukku.lotro.logic.timing.PlayConditions;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Set: Black Rider
|
||||
* Side: Free
|
||||
* Culture: Gollum
|
||||
* Twilight Cost: 0
|
||||
* Type: Condition • Support Area
|
||||
* Game Text: To play, spot Smeagol. Smeagol is strength +1. Regroup: Discard this condition to replace the fellowship's
|
||||
* current site with a site from your adventure deck.
|
||||
*/
|
||||
public class Card12_040 extends AbstractPermanent {
|
||||
public Card12_040() {
|
||||
super(Side.FREE_PEOPLE, 0, CardType.CONDITION, Culture.GOLLUM, "There's Another Way");
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean checkPlayRequirements(LotroGame game, PhysicalCard self) {
|
||||
return PlayConditions.canSpot(game, Filters.smeagol);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends Modifier> getInPlayModifiers(LotroGame game, PhysicalCard self) {
|
||||
return Collections.singletonList(new StrengthModifier(self, Filters.smeagol, 1));
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends ActivateCardAction> getPhaseActionsInPlay(String playerId, LotroGame game, PhysicalCard self) {
|
||||
if (PlayConditions.canUseFPCardDuringPhase(game, Phase.REGROUP, self)
|
||||
&& PlayConditions.canSelfDiscard(self, game)) {
|
||||
ActivateCardAction action = new ActivateCardAction(self);
|
||||
action.appendCost(
|
||||
new SelfDiscardEffect(self));
|
||||
action.appendEffect(
|
||||
new PlaySiteEffect(action, playerId, null, game.getGameState().getCurrentSiteNumber()));
|
||||
return Collections.singletonList(action);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -1,44 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set12.gollum;
|
||||
|
||||
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.AbstractAttachable;
|
||||
import com.gempukku.lotro.logic.modifiers.CantHealModifier;
|
||||
import com.gempukku.lotro.logic.modifiers.Modifier;
|
||||
import com.gempukku.lotro.logic.modifiers.SpotCondition;
|
||||
import com.gempukku.lotro.logic.timing.PlayConditions;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Set: Black Rider
|
||||
* Side: Shadow
|
||||
* Culture: Gollum
|
||||
* Twilight Cost: 0
|
||||
* Type: Condition
|
||||
* Game Text: To play, spot a [GOLLUM] card. Bearer must be a wounded companion. While you can spot a [GOLLUM] character
|
||||
* or a [GOLLUM] card in your support area, bearer cannot heal.
|
||||
*/
|
||||
public class Card12_041 extends AbstractAttachable {
|
||||
public Card12_041() {
|
||||
super(Side.SHADOW, CardType.CONDITION, 0, Culture.GOLLUM, null, "Treacherous Little Toad");
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean checkPlayRequirements(LotroGame game, PhysicalCard self) {
|
||||
return PlayConditions.canSpot(game, Culture.GOLLUM);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Filterable getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self) {
|
||||
return Filters.and(CardType.COMPANION, Filters.wounded);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends Modifier> getInPlayModifiers(LotroGame game, PhysicalCard self) {
|
||||
return Collections.singletonList(new CantHealModifier(self, new SpotCondition(Culture.GOLLUM, Filters.or(Filters.character, Filters.and(Zone.SUPPORT, Filters.owner(self.getOwner())))), Filters.hasAttached(self)));
|
||||
}
|
||||
}
|
||||
@@ -23,6 +23,41 @@
|
||||
type: Condition
|
||||
keywords: Support Area
|
||||
effects: [
|
||||
{
|
||||
type: modifier
|
||||
modifier: {
|
||||
type: modifyCost
|
||||
requires: {
|
||||
type: canSpot
|
||||
filter: name(Sméagol)
|
||||
}
|
||||
filter: site
|
||||
amount: -1
|
||||
}
|
||||
}
|
||||
{
|
||||
type: trigger
|
||||
trigger: {
|
||||
type: moves
|
||||
}
|
||||
effect: {
|
||||
type: choice
|
||||
texts: [
|
||||
Wound a companion
|
||||
Discard this condition
|
||||
]
|
||||
effects: [
|
||||
{
|
||||
type: wound
|
||||
filter: choose(companion)
|
||||
}
|
||||
{
|
||||
type: discard
|
||||
filter: self
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
gametext: While you can spot Sméagol, the Shadow number of each site is -1.<br>Each time the fellowship moves, wound a companion or discard this condition.
|
||||
lore: All ways are watched, yes,' said Gollum. 'Of course they are. But hobbits must try some way. This may be least watched.'
|
||||
@@ -61,9 +96,20 @@
|
||||
effects: {
|
||||
type: event
|
||||
cost: {
|
||||
type: chooseHowManyToSpot
|
||||
filter: culture(gollum)
|
||||
memorize: spotCount
|
||||
},
|
||||
effect: [
|
||||
{
|
||||
type: revealTopCardsOfDrawDeck
|
||||
count: memory(spotCount)
|
||||
memorize: revealedCards
|
||||
}
|
||||
{
|
||||
type: playCardFromDrawDeck
|
||||
filter: choose(memory(revealedCards),minion)
|
||||
cost: -2
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -101,6 +147,23 @@
|
||||
type: Condition
|
||||
keywords: Support Area
|
||||
effects: [
|
||||
{
|
||||
type: trigger
|
||||
optional: true
|
||||
trigger: {
|
||||
type: movesTo
|
||||
filter: or(mountain,underground)
|
||||
}
|
||||
cost: {
|
||||
type: discardFromHand
|
||||
forced: false
|
||||
filter: choose(culture(gollum),event)
|
||||
}
|
||||
effect: {
|
||||
type: putCardsFromDiscardIntoHand
|
||||
filter: choose(minion)
|
||||
}
|
||||
}
|
||||
]
|
||||
gametext: Each time the fellowship moves to a mountain or underground site, you may discard a [gollum] event from hand to take a minion from your discard pile into hand.
|
||||
lore: Gollum stalked the Ring-bearer over many leagues, awaiting the right opportunity to strike.
|
||||
@@ -136,6 +199,35 @@
|
||||
type: Condition
|
||||
keywords: Support Area
|
||||
effects: [
|
||||
{
|
||||
type: toPlay
|
||||
requires: {
|
||||
type: canSpot
|
||||
filter: name(Sméagol)
|
||||
}
|
||||
}
|
||||
{
|
||||
type: modifier
|
||||
modifier: {
|
||||
type: modifyStrength
|
||||
filter: name(Sméagol)
|
||||
amount: 1
|
||||
}
|
||||
}
|
||||
{
|
||||
type: activated
|
||||
phase: regroup
|
||||
cost: {
|
||||
type: discard
|
||||
filter: self
|
||||
}
|
||||
effect: {
|
||||
type: playSite
|
||||
number: {
|
||||
type: currentSiteNumber
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
gametext: To play, spot Sméagol.<br>Sméagol is strength +1.<br><b>Regroup:</b> Discard this condition to replace the fellowship's current site with a site from your adventure deck.
|
||||
lore: Frodo felt a strange certainty that in this matter Gollum was for once not so far from the truth....
|
||||
@@ -169,8 +261,26 @@
|
||||
culture: Gollum
|
||||
twilight: 0
|
||||
type: Condition
|
||||
#target: a wounded companion
|
||||
target: wounded,companion
|
||||
effects: [
|
||||
{
|
||||
type: toPlay
|
||||
requires: {
|
||||
type: canSpot
|
||||
filter: culture(gollum)
|
||||
}
|
||||
}
|
||||
{
|
||||
type: modifier
|
||||
modifier: {
|
||||
type: cantHeal
|
||||
requires: {
|
||||
type: canSpot
|
||||
filter: culture(gollum),or(character,and(your,zone(support)))
|
||||
}
|
||||
filter: bearer
|
||||
}
|
||||
}
|
||||
]
|
||||
gametext: To play, spot a [gollum] card.<br>Bearer must be a wounded companion.<br>While you can spot a [gollum] character or a [gollum] card in your support area, bearer cannot heal.
|
||||
lore: The Precious will be ours once the Hobbitses are dead!'
|
||||
Reference in New Issue
Block a user