Migrated Site cards in set 5 to hjson
This commit is contained in:
@@ -1,48 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set5.site;
|
||||
|
||||
import com.gempukku.lotro.common.CardType;
|
||||
import com.gempukku.lotro.common.Phase;
|
||||
import com.gempukku.lotro.common.SitesBlock;
|
||||
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.AbstractSite;
|
||||
import com.gempukku.lotro.logic.effects.AddUntilEndOfPhaseModifierEffect;
|
||||
import com.gempukku.lotro.logic.effects.RemoveTwilightEffect;
|
||||
import com.gempukku.lotro.logic.modifiers.ModifierFlag;
|
||||
import com.gempukku.lotro.logic.modifiers.SpecialFlagModifier;
|
||||
import com.gempukku.lotro.logic.timing.PlayConditions;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Set: Battle of Helm's Deep
|
||||
* Twilight Cost: 6
|
||||
* Type: Site
|
||||
* Site: 7T
|
||||
* Game Text: Regroup: Spot your minion and remove (9) to make the fellowship move again this turn (if the move
|
||||
* limit allows).
|
||||
*/
|
||||
public class Card5_118 extends AbstractSite {
|
||||
public Card5_118() {
|
||||
super("Hornburg Wall", SitesBlock.TWO_TOWERS, 7, 6, Direction.RIGHT);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends ActivateCardAction> getPhaseActionsInPlay(String playerId, LotroGame game, PhysicalCard self) {
|
||||
if (PlayConditions.canUseSiteDuringPhase(game, Phase.REGROUP, self)
|
||||
&& PlayConditions.canSpot(game, CardType.MINION, Filters.owner(playerId))
|
||||
&& game.getGameState().getTwilightPool() >= 9) {
|
||||
ActivateCardAction action = new ActivateCardAction(self);
|
||||
action.appendCost(
|
||||
new RemoveTwilightEffect(9));
|
||||
action.appendEffect(
|
||||
new AddUntilEndOfPhaseModifierEffect(
|
||||
new SpecialFlagModifier(self, ModifierFlag.HAS_TO_MOVE_IF_POSSIBLE)));
|
||||
return Collections.singletonList(action);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -1,57 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set5.site;
|
||||
|
||||
import com.gempukku.lotro.common.CardType;
|
||||
import com.gempukku.lotro.common.Keyword;
|
||||
import com.gempukku.lotro.common.SitesBlock;
|
||||
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.AbstractSite;
|
||||
import com.gempukku.lotro.logic.effects.ChooseActiveCardEffect;
|
||||
import com.gempukku.lotro.logic.effects.PreventCardEffect;
|
||||
import com.gempukku.lotro.logic.effects.RemoveTwilightEffect;
|
||||
import com.gempukku.lotro.logic.effects.WoundCharactersEffect;
|
||||
import com.gempukku.lotro.logic.timing.Effect;
|
||||
import com.gempukku.lotro.logic.timing.TriggerConditions;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Set: Battle of Helm's Deep
|
||||
* Twilight Cost: 8
|
||||
* Type: Site
|
||||
* Site: 8T
|
||||
* Game Text: Plains. Response: If your mounted minion is about to take a wound, remove (2) to prevent that wound.
|
||||
*/
|
||||
public class Card5_119 extends AbstractSite {
|
||||
public Card5_119() {
|
||||
super("Nan Curunír", SitesBlock.TWO_TOWERS, 8, 8, Direction.RIGHT);
|
||||
addKeyword(Keyword.PLAINS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends ActivateCardAction> getOptionalInPlayBeforeActions(String playerId, LotroGame game, Effect effect, PhysicalCard self) {
|
||||
if (TriggerConditions.isGettingWounded(effect, game, CardType.MINION, Filters.owner(playerId), Filters.mounted)
|
||||
&& game.getGameState().getTwilightPool() >= 2) {
|
||||
final WoundCharactersEffect woundEffect = (WoundCharactersEffect) effect;
|
||||
final Collection<PhysicalCard> cardsToBeWounded = woundEffect.getAffectedCardsMinusPrevented(game);
|
||||
|
||||
final ActivateCardAction action = new ActivateCardAction(self);
|
||||
action.appendCost(
|
||||
new RemoveTwilightEffect(2));
|
||||
action.appendEffect(
|
||||
new ChooseActiveCardEffect(self, playerId, "Choose minion", CardType.MINION, Filters.owner(playerId), Filters.mounted, Filters.in(cardsToBeWounded)) {
|
||||
@Override
|
||||
protected void cardSelected(LotroGame game, PhysicalCard minion) {
|
||||
action.appendEffect(
|
||||
new PreventCardEffect(woundEffect, minion));
|
||||
}
|
||||
});
|
||||
return Collections.singletonList(action);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -1,34 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set5.site;
|
||||
|
||||
import com.gempukku.lotro.common.Keyword;
|
||||
import com.gempukku.lotro.common.SitesBlock;
|
||||
import com.gempukku.lotro.game.PhysicalCard;
|
||||
import com.gempukku.lotro.game.state.LotroGame;
|
||||
import com.gempukku.lotro.logic.cardtype.AbstractSite;
|
||||
import com.gempukku.lotro.logic.modifiers.Modifier;
|
||||
import com.gempukku.lotro.logic.modifiers.ModifierFlag;
|
||||
import com.gempukku.lotro.logic.modifiers.SpecialFlagModifier;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Set: Battle of Helm's Deep
|
||||
* Twilight Cost: 9
|
||||
* Type: Site
|
||||
* Site: 9T
|
||||
* Game Text: Underground. The Free Peoples player wins the game only if the Ring-bearer survives until Shadow players
|
||||
* reconcile.
|
||||
*/
|
||||
public class Card5_120 extends AbstractSite {
|
||||
public Card5_120() {
|
||||
super("Caverns of Isengard", SitesBlock.TWO_TOWERS, 9, 9, Direction.LEFT);
|
||||
addKeyword(Keyword.UNDERGROUND);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends Modifier> getInPlayModifiers(LotroGame game, PhysicalCard self) {
|
||||
return Collections.singletonList(
|
||||
new SpecialFlagModifier(self, ModifierFlag.WIN_CHECK_AFTER_SHADOW_RECONCILE));
|
||||
}
|
||||
}
|
||||
@@ -19,20 +19,29 @@
|
||||
unique: false
|
||||
twilight: 6
|
||||
type: Site
|
||||
site: 7T
|
||||
site: 7
|
||||
block: Towers
|
||||
direction: Right
|
||||
/*requires: {
|
||||
|
||||
}
|
||||
effects: [
|
||||
{
|
||||
|
||||
type: activated
|
||||
phase: regroup
|
||||
requires: {
|
||||
type: canSpot
|
||||
filter: your,minion
|
||||
}
|
||||
{
|
||||
|
||||
cost: {
|
||||
type: removeTwilight
|
||||
amount: 9
|
||||
}
|
||||
]*/
|
||||
effect: {
|
||||
type: addModifier
|
||||
modifier: {
|
||||
type: hasToMoveIfAble
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
gametext: <b>Regroup:</b> Spot your minion and remove (9) to make the fellowship move again this turn (if the move limit allows).
|
||||
lore: ""
|
||||
promotext: ""
|
||||
@@ -63,21 +72,27 @@
|
||||
unique: false
|
||||
twilight: 8
|
||||
type: Site
|
||||
site: 8T
|
||||
site: 8
|
||||
block: Towers
|
||||
direction: Left
|
||||
keywords: Plains
|
||||
/*requires: {
|
||||
|
||||
}
|
||||
effects: [
|
||||
{
|
||||
|
||||
type: activatedTrigger
|
||||
trigger: {
|
||||
type: aboutToTakeWound
|
||||
filter: your,mounted,minion
|
||||
}
|
||||
{
|
||||
|
||||
cost: {
|
||||
type: removeTwilight
|
||||
amount: 2
|
||||
}
|
||||
]*/
|
||||
effect: {
|
||||
type: preventWound
|
||||
filter: choose(your,mounted,minion)
|
||||
}
|
||||
}
|
||||
]
|
||||
gametext: <b>Plains</b>. <b>Response:</b> If your mounted minion is about to take a wound, remove (2) to prevent that wound.
|
||||
lore: ""
|
||||
promotext: ""
|
||||
@@ -108,21 +123,18 @@
|
||||
unique: false
|
||||
twilight: 9
|
||||
type: Site
|
||||
site: 9T
|
||||
site: 9
|
||||
block: Towers
|
||||
direction: Right
|
||||
keywords: Underground
|
||||
/*requires: {
|
||||
|
||||
}
|
||||
effects: [
|
||||
{
|
||||
|
||||
type: modifier
|
||||
modifier: {
|
||||
type: winsAfterReconcile
|
||||
}
|
||||
{
|
||||
|
||||
}
|
||||
]*/
|
||||
]
|
||||
gametext: <b>Underground</b>. The Free Peoples player wins the game only if the Ring-bearer survives until Shadow players reconcile.
|
||||
lore: ""
|
||||
promotext: ""
|
||||
@@ -81,6 +81,7 @@ public class ModifierSourceFactory {
|
||||
modifierProducers.put("shadowusesvitinsteadofstr", new ShadowUsesVitInsteadOfStr());
|
||||
modifierProducers.put("skipphase", new SkipPhase());
|
||||
modifierProducers.put("unhastycompanioncanparticipateinskirmishes", new UnhastyCompanionCanParticipateInSkirmishes());
|
||||
modifierProducers.put("winsafterreconcile", new AddModifierFlag(ModifierFlag.WIN_CHECK_AFTER_SHADOW_RECONCILE));
|
||||
}
|
||||
|
||||
public ModifierSource getModifier(JSONObject object, CardGenerationEnvironment environment) throws InvalidCardDefinitionException {
|
||||
|
||||
Reference in New Issue
Block a user