Migrated Moria cards in set 3 to hjson
This commit is contained in:
@@ -1,53 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set3.moria;
|
||||
|
||||
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.PlayEventAction;
|
||||
import com.gempukku.lotro.logic.cardtype.AbstractEvent;
|
||||
import com.gempukku.lotro.logic.effects.AddTwilightEffect;
|
||||
import com.gempukku.lotro.logic.effects.RevealRandomCardsFromHandEffect;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Set: Realms of Elf-lords
|
||||
* Side: Shadow
|
||||
* Culture: Moria
|
||||
* Twilight Cost: 2
|
||||
* Type: Event
|
||||
* Game Text: Shadow: Spot a [MORIA] minion to reveal a card at random from the Free Peoples player's hand. Add (X),
|
||||
* where X is the twilight cost of the card revealed.
|
||||
*/
|
||||
public class Card3_076 extends AbstractEvent {
|
||||
public Card3_076() {
|
||||
super(Side.SHADOW, 2, Culture.MORIA, "Dangerous Gamble", Phase.SHADOW);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean checkPlayRequirements(LotroGame game, PhysicalCard self) {
|
||||
return Filters.canSpot(game, Culture.MORIA, CardType.MINION);
|
||||
}
|
||||
|
||||
@Override
|
||||
public PlayEventAction getPlayEventCardAction(String playerId, LotroGame game, final PhysicalCard self) {
|
||||
final PlayEventAction action = new PlayEventAction(self);
|
||||
action.appendEffect(
|
||||
new RevealRandomCardsFromHandEffect(playerId, game.getGameState().getCurrentPlayerId(), self, 1) {
|
||||
@Override
|
||||
protected void cardsRevealed(List<PhysicalCard> revealedCards) {
|
||||
if (revealedCards.size() > 0) {
|
||||
PhysicalCard revealedCard = revealedCards.get(0);
|
||||
int twilightCost = revealedCard.getBlueprint().getTwilightCost();
|
||||
action.appendEffect(
|
||||
new AddTwilightEffect(self, twilightCost));
|
||||
}
|
||||
}
|
||||
});
|
||||
return action;
|
||||
}
|
||||
}
|
||||
@@ -1,46 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set3.moria;
|
||||
|
||||
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.RequiredTriggerAction;
|
||||
import com.gempukku.lotro.logic.cardtype.AbstractPermanent;
|
||||
import com.gempukku.lotro.logic.effects.AddTwilightEffect;
|
||||
import com.gempukku.lotro.logic.timing.EffectResult;
|
||||
import com.gempukku.lotro.logic.timing.TriggerConditions;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Set: Realms of Elf-lords
|
||||
* Side: Shadow
|
||||
* Culture: Moria
|
||||
* Twilight Cost: 1
|
||||
* Type: Condition
|
||||
* Game Text: To play, spot a [MORIA] Orc. Plays to your support area. Each time the fellowship moves during
|
||||
* the regroup phase, add (2).
|
||||
*/
|
||||
public class Card3_077 extends AbstractPermanent {
|
||||
public Card3_077() {
|
||||
super(Side.SHADOW, 1, CardType.CONDITION, Culture.MORIA, "Depths of Moria");
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean checkPlayRequirements(LotroGame game, PhysicalCard self) {
|
||||
return Filters.canSpot(game, Culture.MORIA, Race.ORC);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<RequiredTriggerAction> getRequiredAfterTriggers(LotroGame game, EffectResult effectResult, PhysicalCard self) {
|
||||
if (TriggerConditions.moves(game, effectResult)
|
||||
&& game.getGameState().getCurrentPhase() == Phase.REGROUP) {
|
||||
RequiredTriggerAction action = new RequiredTriggerAction(self);
|
||||
action.appendEffect(
|
||||
new AddTwilightEffect(self, 2));
|
||||
return Collections.singletonList(action);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -1,47 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set3.moria;
|
||||
|
||||
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.AddUntilEndOfPhaseModifierEffect;
|
||||
import com.gempukku.lotro.logic.effects.ChooseActiveCardEffect;
|
||||
import com.gempukku.lotro.logic.modifiers.KeywordModifier;
|
||||
import com.gempukku.lotro.logic.timing.PlayConditions;
|
||||
|
||||
/**
|
||||
* Set: Realms of Elf-lords
|
||||
* Side: Shadow
|
||||
* Culture: Moria
|
||||
* Twilight Cost: 1
|
||||
* Type: Event
|
||||
* Game Text: Search. Skirmish: Spot 2 [SHIRE] companions to make a [MORIA] minion damage +1.
|
||||
*/
|
||||
public class Card3_078 extends AbstractEvent {
|
||||
public Card3_078() {
|
||||
super(Side.SHADOW, 1, Culture.MORIA, "Hide and Seek", Phase.SKIRMISH);
|
||||
addKeyword(Keyword.SEARCH);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean checkPlayRequirements(LotroGame game, PhysicalCard self) {
|
||||
return PlayConditions.canSpot(game, 2, Culture.SHIRE, CardType.COMPANION);
|
||||
}
|
||||
|
||||
@Override
|
||||
public PlayEventAction getPlayEventCardAction(String playerId, LotroGame game, final PhysicalCard self) {
|
||||
final PlayEventAction action = new PlayEventAction(self);
|
||||
action.appendEffect(
|
||||
new ChooseActiveCardEffect(self, playerId, "Choose MORIA minion", Culture.MORIA, CardType.MINION) {
|
||||
@Override
|
||||
protected void cardSelected(LotroGame game, PhysicalCard card) {
|
||||
action.appendEffect(
|
||||
new AddUntilEndOfPhaseModifierEffect(
|
||||
new KeywordModifier(self, Filters.sameCard(card), Keyword.DAMAGE)));
|
||||
}
|
||||
});
|
||||
return action;
|
||||
}
|
||||
}
|
||||
@@ -1,37 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set3.moria;
|
||||
|
||||
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.ChooseAndWoundCharactersEffect;
|
||||
|
||||
/**
|
||||
* Set: Realms of Elf-lords
|
||||
* Side: Shadow
|
||||
* Culture: Moria
|
||||
* Twilight Cost: 0
|
||||
* Type: Event
|
||||
* Game Text: Archery: Spot a [MORIA] Orc and a [SAURON] Orc to wound an archer.
|
||||
*/
|
||||
public class Card3_079 extends AbstractEvent {
|
||||
public Card3_079() {
|
||||
super(Side.SHADOW, 0, Culture.MORIA, "Malice", Phase.ARCHERY);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean checkPlayRequirements(LotroGame game, PhysicalCard self) {
|
||||
return Filters.canSpot(game, Culture.MORIA, Race.ORC)
|
||||
&& Filters.canSpot(game, Culture.SAURON, Race.ORC);
|
||||
}
|
||||
|
||||
@Override
|
||||
public PlayEventAction getPlayEventCardAction(String playerId, LotroGame game, PhysicalCard self) {
|
||||
PlayEventAction action = new PlayEventAction(self);
|
||||
action.appendEffect(
|
||||
new ChooseAndWoundCharactersEffect(action, playerId, 1, 1, Keyword.ARCHER));
|
||||
return action;
|
||||
}
|
||||
}
|
||||
@@ -1,75 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set3.moria;
|
||||
|
||||
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.CostToEffectAction;
|
||||
import com.gempukku.lotro.logic.actions.PlayEventAction;
|
||||
import com.gempukku.lotro.logic.cardtype.AbstractEvent;
|
||||
import com.gempukku.lotro.logic.effects.ChooseAndWoundCharactersEffect;
|
||||
import com.gempukku.lotro.logic.effects.PreventableEffect;
|
||||
import com.gempukku.lotro.logic.effects.choose.ChooseAndDiscardCardsFromPlayEffect;
|
||||
import com.gempukku.lotro.logic.timing.Effect;
|
||||
import com.gempukku.lotro.logic.timing.UnrespondableEffect;
|
||||
|
||||
import java.util.Collections;
|
||||
|
||||
/**
|
||||
* Set: Realms of Elf-lords
|
||||
* Side: Shadow
|
||||
* Culture: Moria
|
||||
* Twilight Cost: 0
|
||||
* Type: Event
|
||||
* Game Text: Maneuver: Spot a [MORIA] minion to wound Boromir 3 times. The Free Peoples player may discard 2 Free
|
||||
* Peoples possessions to prevent this.
|
||||
*/
|
||||
public class Card3_080 extends AbstractEvent {
|
||||
public Card3_080() {
|
||||
super(Side.SHADOW, 0, Culture.MORIA, "Such a Little Thing", Phase.MANEUVER);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean checkPlayRequirements(LotroGame game, PhysicalCard self) {
|
||||
return Filters.canSpot(game, Culture.MORIA, CardType.MINION);
|
||||
}
|
||||
|
||||
@Override
|
||||
public PlayEventAction getPlayEventCardAction(final String playerId, LotroGame game, PhysicalCard self) {
|
||||
final PlayEventAction action = new PlayEventAction(self);
|
||||
action.appendEffect(
|
||||
new PreventableEffect(action,
|
||||
new UnrespondableEffect() {
|
||||
@Override
|
||||
public String getText(LotroGame game) {
|
||||
return "Wound Boromir 3 times";
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void doPlayEffect(LotroGame game) {
|
||||
action.appendEffect(
|
||||
new ChooseAndWoundCharactersEffect(action, playerId, 1, 1, Filters.boromir));
|
||||
action.appendEffect(
|
||||
new ChooseAndWoundCharactersEffect(action, playerId, 1, 1, Filters.boromir));
|
||||
action.appendEffect(
|
||||
new ChooseAndWoundCharactersEffect(action, playerId, 1, 1, Filters.boromir));
|
||||
}
|
||||
}, Collections.singletonList(game.getGameState().getCurrentPlayerId()),
|
||||
new PreventableEffect.PreventionCost() {
|
||||
@Override
|
||||
public Effect createPreventionCostForPlayer(CostToEffectAction subAction, String playerId) {
|
||||
return new ChooseAndDiscardCardsFromPlayEffect(subAction, playerId, 2, 2, Side.FREE_PEOPLE, CardType.POSSESSION) {
|
||||
@Override
|
||||
public String getText(LotroGame game) {
|
||||
return "Discard 2 Free People possessions";
|
||||
}
|
||||
};
|
||||
}
|
||||
}
|
||||
));
|
||||
return action;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,145 @@
|
||||
{
|
||||
3_76: {
|
||||
title: Dangerous Gamble
|
||||
side: shadow
|
||||
culture: Moria
|
||||
twilight: 2
|
||||
type: event
|
||||
keyword: Shadow
|
||||
effects: {
|
||||
type: event
|
||||
requires: {
|
||||
type: canSpot
|
||||
filter: culture(moria),minion
|
||||
}
|
||||
effect: [
|
||||
{
|
||||
type: revealRandomCardsFromHand
|
||||
forced: true
|
||||
hand: fp
|
||||
memorize: revealedCard
|
||||
}
|
||||
{
|
||||
type: addTwilight
|
||||
amount: {
|
||||
type: twilightCostInMemory
|
||||
memory: revealedCard
|
||||
}
|
||||
}
|
||||
]
|
||||
|
||||
}
|
||||
}
|
||||
3_77: {
|
||||
title: Depths of Moria
|
||||
side: shadow
|
||||
culture: Moria
|
||||
twilight: 1
|
||||
type: condition
|
||||
keyword: Support Area
|
||||
effects: [
|
||||
{
|
||||
type: toPlay
|
||||
requires: {
|
||||
type: canSpot
|
||||
filter: culture(moria),orc
|
||||
}
|
||||
}
|
||||
{
|
||||
type: trigger
|
||||
trigger: {
|
||||
type: moves
|
||||
}
|
||||
requires: {
|
||||
type: phase
|
||||
phase: regroup
|
||||
}
|
||||
effect: {
|
||||
type: addTwilight
|
||||
amount: 2
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
3_78: {
|
||||
title: Hide and Seek
|
||||
side: shadow
|
||||
culture: Moria
|
||||
twilight: 1
|
||||
type: event
|
||||
keyword:
|
||||
[
|
||||
Skirmish
|
||||
Search
|
||||
]
|
||||
effects: {
|
||||
type: event
|
||||
requires: {
|
||||
type: canSpot
|
||||
count: 2
|
||||
filter: culture(shire),companion
|
||||
}
|
||||
effect: {
|
||||
type: addKeyword
|
||||
filter: choose(culture(moria),minion)
|
||||
keyword: damage
|
||||
amount: 1
|
||||
}
|
||||
}
|
||||
}
|
||||
3_79: {
|
||||
title: Malice
|
||||
side: shadow
|
||||
culture: Moria
|
||||
twilight: 0
|
||||
type: event
|
||||
keyword: Archery
|
||||
effects: {
|
||||
type: event
|
||||
requires: [
|
||||
{
|
||||
type: canSpot
|
||||
filter: culture(moria),orc
|
||||
}
|
||||
{
|
||||
type: canSpot
|
||||
filter: culture(sauron),orc
|
||||
}
|
||||
]
|
||||
effect: {
|
||||
type: wound
|
||||
filter: choose(archer)
|
||||
}
|
||||
}
|
||||
}
|
||||
3_80: {
|
||||
title: Such a Little Thing
|
||||
side: shadow
|
||||
culture: Moria
|
||||
twilight: 0
|
||||
type: event
|
||||
keyword: Maneuver
|
||||
effects: {
|
||||
type: event
|
||||
requires: {
|
||||
type: canSpot
|
||||
filter: culture(moria),minion
|
||||
}
|
||||
effect: {
|
||||
type: preventable
|
||||
text: Would you like to discard 2 FP possession to prevent wounding Boromir 3 times?
|
||||
player: fp
|
||||
cost: {
|
||||
type: discard
|
||||
filter: choose(side(free),possession)
|
||||
count: 2
|
||||
}
|
||||
effect: {
|
||||
type: wound
|
||||
filter: choose(name(Boromir))
|
||||
times: 3
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user