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
|
unique: false
|
||||||
twilight: 6
|
twilight: 6
|
||||||
type: Site
|
type: Site
|
||||||
site: 7T
|
site: 7
|
||||||
block: Towers
|
block: Towers
|
||||||
direction: Right
|
direction: Right
|
||||||
/*requires: {
|
|
||||||
|
|
||||||
}
|
|
||||||
effects: [
|
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).
|
gametext: <b>Regroup:</b> Spot your minion and remove (9) to make the fellowship move again this turn (if the move limit allows).
|
||||||
lore: ""
|
lore: ""
|
||||||
promotext: ""
|
promotext: ""
|
||||||
@@ -63,21 +72,27 @@
|
|||||||
unique: false
|
unique: false
|
||||||
twilight: 8
|
twilight: 8
|
||||||
type: Site
|
type: Site
|
||||||
site: 8T
|
site: 8
|
||||||
block: Towers
|
block: Towers
|
||||||
direction: Left
|
direction: Left
|
||||||
keywords: Plains
|
keywords: Plains
|
||||||
/*requires: {
|
|
||||||
|
|
||||||
}
|
|
||||||
effects: [
|
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.
|
gametext: <b>Plains</b>. <b>Response:</b> If your mounted minion is about to take a wound, remove (2) to prevent that wound.
|
||||||
lore: ""
|
lore: ""
|
||||||
promotext: ""
|
promotext: ""
|
||||||
@@ -108,21 +123,18 @@
|
|||||||
unique: false
|
unique: false
|
||||||
twilight: 9
|
twilight: 9
|
||||||
type: Site
|
type: Site
|
||||||
site: 9T
|
site: 9
|
||||||
block: Towers
|
block: Towers
|
||||||
direction: Right
|
direction: Right
|
||||||
keywords: Underground
|
keywords: Underground
|
||||||
/*requires: {
|
|
||||||
|
|
||||||
}
|
|
||||||
effects: [
|
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.
|
gametext: <b>Underground</b>. The Free Peoples player wins the game only if the Ring-bearer survives until Shadow players reconcile.
|
||||||
lore: ""
|
lore: ""
|
||||||
promotext: ""
|
promotext: ""
|
||||||
@@ -81,6 +81,7 @@ public class ModifierSourceFactory {
|
|||||||
modifierProducers.put("shadowusesvitinsteadofstr", new ShadowUsesVitInsteadOfStr());
|
modifierProducers.put("shadowusesvitinsteadofstr", new ShadowUsesVitInsteadOfStr());
|
||||||
modifierProducers.put("skipphase", new SkipPhase());
|
modifierProducers.put("skipphase", new SkipPhase());
|
||||||
modifierProducers.put("unhastycompanioncanparticipateinskirmishes", new UnhastyCompanionCanParticipateInSkirmishes());
|
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 {
|
public ModifierSource getModifier(JSONObject object, CardGenerationEnvironment environment) throws InvalidCardDefinitionException {
|
||||||
|
|||||||
Reference in New Issue
Block a user