Migrated Gandalf cards in set 5 to hjson
This commit is contained in:
@@ -1,80 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set5.gandalf;
|
||||
|
||||
import com.gempukku.lotro.common.Culture;
|
||||
import com.gempukku.lotro.common.Keyword;
|
||||
import com.gempukku.lotro.common.Phase;
|
||||
import com.gempukku.lotro.common.Race;
|
||||
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.*;
|
||||
import com.gempukku.lotro.logic.effects.choose.ChooseAndExertCharactersEffect;
|
||||
import com.gempukku.lotro.logic.modifiers.UnhastyCompanionParticipatesInSkirmishedModifier;
|
||||
import com.gempukku.lotro.logic.timing.Effect;
|
||||
import com.gempukku.lotro.logic.timing.PlayConditions;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Set: Battle of Helm's Deep
|
||||
* Side: Free
|
||||
* Culture: Gandalf
|
||||
* Twilight Cost: 3
|
||||
* Type: Companion • Ent
|
||||
* Strength: 8
|
||||
* Vitality: 4
|
||||
* Resistance: 6
|
||||
* Game Text: Unhasty. Assignment: Exert an unbound Hobbit or discard 2 cards from hand to allow Birchseed to skirmish.
|
||||
* Fellowship: Exert Birchseed to Heal an unbound Hobbit.
|
||||
*/
|
||||
public class Card5_015 extends AbstractCompanion {
|
||||
public Card5_015() {
|
||||
super(3, 8, 4, 6, Culture.GANDALF, Race.ENT, null, "Birchseed", "Tall Statesman", true);
|
||||
addKeyword(Keyword.UNHASTY);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends ActivateCardAction> getPhaseActionsInPlay(String playerId, LotroGame game, PhysicalCard self) {
|
||||
if (PlayConditions.canUseFPCardDuringPhase(game, Phase.FELLOWSHIP, self)
|
||||
&& PlayConditions.canSelfExert(self, game)) {
|
||||
ActivateCardAction action = new ActivateCardAction(self);
|
||||
action.appendCost(
|
||||
new SelfExertEffect(action, self));
|
||||
action.appendEffect(
|
||||
new ChooseAndHealCharactersEffect(action, playerId, Race.HOBBIT, Filters.unboundCompanion));
|
||||
return Collections.singletonList(action);
|
||||
}
|
||||
if (PlayConditions.canUseFPCardDuringPhase(game, Phase.ASSIGNMENT, self)
|
||||
&& (
|
||||
PlayConditions.canExert(self, game, Race.HOBBIT, Filters.unboundCompanion)
|
||||
|| game.getGameState().getHand(playerId).size() >= 2)) {
|
||||
ActivateCardAction action = new ActivateCardAction(self);
|
||||
List<Effect> possibleCosts = new LinkedList<>();
|
||||
possibleCosts.add(
|
||||
new ChooseAndExertCharactersEffect(action, playerId, 1, 1, Race.HOBBIT, Filters.unboundCompanion) {
|
||||
@Override
|
||||
public String getText(LotroGame game) {
|
||||
return "Exert an unbound Hobbit";
|
||||
}
|
||||
});
|
||||
possibleCosts.add(
|
||||
new ChooseAndDiscardCardsFromHandEffect(action, playerId, false, 2) {
|
||||
@Override
|
||||
public String getText(LotroGame game) {
|
||||
return "Discard 2 cards from hand";
|
||||
}
|
||||
});
|
||||
action.appendCost(
|
||||
new ChoiceEffect(action, playerId, possibleCosts));
|
||||
action.appendEffect(
|
||||
new AddUntilEndOfPhaseModifierEffect(
|
||||
new UnhastyCompanionParticipatesInSkirmishedModifier(self, self)));
|
||||
return Collections.singletonList(action);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -1,62 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set5.gandalf;
|
||||
|
||||
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.AddUntilStartOfPhaseModifierEffect;
|
||||
import com.gempukku.lotro.logic.effects.ChooseActiveCardEffect;
|
||||
import com.gempukku.lotro.logic.effects.choose.ChooseAndExertCharactersEffect;
|
||||
import com.gempukku.lotro.logic.modifiers.CantTakeWoundsModifier;
|
||||
import com.gempukku.lotro.logic.modifiers.KeywordModifier;
|
||||
import com.gempukku.lotro.logic.modifiers.StrengthModifier;
|
||||
import com.gempukku.lotro.logic.timing.PlayConditions;
|
||||
|
||||
/**
|
||||
* Set: Battle of Helm's Deep
|
||||
* Side: Free
|
||||
* Culture: Gandalf
|
||||
* Twilight Cost: 5
|
||||
* Type: Event
|
||||
* Game Text: Spell. Maneuver: Exert Gandalf 3 times to make an unbound companion with the Gandalf signet strength +5,
|
||||
* defender +1, damage +2, and unable to take wounds until the regroup phase.
|
||||
*/
|
||||
public class Card5_016 extends AbstractEvent {
|
||||
public Card5_016() {
|
||||
super(Side.FREE_PEOPLE, 5, Culture.GANDALF, "Down From the Hills", Phase.MANEUVER);
|
||||
addKeyword(Keyword.SPELL);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean checkPlayRequirements(LotroGame game, PhysicalCard self) {
|
||||
return PlayConditions.canExert(self, game, 3, Filters.gandalf);
|
||||
}
|
||||
|
||||
@Override
|
||||
public PlayEventAction getPlayEventCardAction(String playerId, LotroGame game, final PhysicalCard self) {
|
||||
final PlayEventAction action = new PlayEventAction(self);
|
||||
action.appendCost(
|
||||
new ChooseAndExertCharactersEffect(action, playerId, 1, 1, 3, Filters.gandalf));
|
||||
action.appendEffect(
|
||||
new ChooseActiveCardEffect(self, playerId, "Choose unbound companion", Filters.unboundCompanion, Signet.GANDALF) {
|
||||
@Override
|
||||
protected void cardSelected(LotroGame game, PhysicalCard card) {
|
||||
action.appendEffect(
|
||||
new AddUntilStartOfPhaseModifierEffect(
|
||||
new StrengthModifier(self, Filters.sameCard(card), 5), Phase.REGROUP));
|
||||
action.appendEffect(
|
||||
new AddUntilStartOfPhaseModifierEffect(
|
||||
new KeywordModifier(self, Filters.sameCard(card), Keyword.DEFENDER, 1), Phase.REGROUP));
|
||||
action.appendEffect(
|
||||
new AddUntilStartOfPhaseModifierEffect(
|
||||
new KeywordModifier(self, Filters.sameCard(card), Keyword.DAMAGE, 2), Phase.REGROUP));
|
||||
action.appendEffect(
|
||||
new AddUntilStartOfPhaseModifierEffect(
|
||||
new CantTakeWoundsModifier(self, Filters.sameCard(card)), Phase.REGROUP));
|
||||
}
|
||||
});
|
||||
return action;
|
||||
}
|
||||
}
|
||||
@@ -1,73 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set5.gandalf;
|
||||
|
||||
import com.gempukku.lotro.common.Culture;
|
||||
import com.gempukku.lotro.common.Keyword;
|
||||
import com.gempukku.lotro.common.Phase;
|
||||
import com.gempukku.lotro.common.Race;
|
||||
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.ChoiceEffect;
|
||||
import com.gempukku.lotro.logic.effects.ChooseAndDiscardCardsFromHandEffect;
|
||||
import com.gempukku.lotro.logic.effects.choose.ChooseAndExertCharactersEffect;
|
||||
import com.gempukku.lotro.logic.modifiers.UnhastyCompanionParticipatesInSkirmishedModifier;
|
||||
import com.gempukku.lotro.logic.timing.Effect;
|
||||
import com.gempukku.lotro.logic.timing.PlayConditions;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Set: Battle of Helm's Deep
|
||||
* Side: Free
|
||||
* Culture: Gandalf
|
||||
* Twilight Cost: 2
|
||||
* Type: Companion • Ent
|
||||
* Strength: 8
|
||||
* Vitality: 3
|
||||
* Resistance: 6
|
||||
* Game Text: Unhasty. Assignment: Exert an unbound Hobbit or discard 2 cards from hand to allow this companion
|
||||
* to skirmish.
|
||||
*/
|
||||
public class Card5_017 extends AbstractCompanion {
|
||||
public Card5_017() {
|
||||
super(2, 8, 3, 6, Culture.GANDALF, Race.ENT, null, "Forest Guardian");
|
||||
addKeyword(Keyword.UNHASTY);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends ActivateCardAction> getPhaseActionsInPlay(String playerId, LotroGame game, PhysicalCard self) {
|
||||
if (PlayConditions.canUseFPCardDuringPhase(game, Phase.ASSIGNMENT, self)
|
||||
&& (
|
||||
PlayConditions.canExert(self, game, Race.HOBBIT, Filters.unboundCompanion)
|
||||
|| game.getGameState().getHand(playerId).size() >= 2)) {
|
||||
ActivateCardAction action = new ActivateCardAction(self);
|
||||
List<Effect> possibleCosts = new LinkedList<>();
|
||||
possibleCosts.add(
|
||||
new ChooseAndExertCharactersEffect(action, playerId, 1, 1, Race.HOBBIT, Filters.unboundCompanion) {
|
||||
@Override
|
||||
public String getText(LotroGame game) {
|
||||
return "Exert an unbound Hobbit";
|
||||
}
|
||||
});
|
||||
possibleCosts.add(
|
||||
new ChooseAndDiscardCardsFromHandEffect(action, playerId, false, 2) {
|
||||
@Override
|
||||
public String getText(LotroGame game) {
|
||||
return "Discard 2 cards from hand";
|
||||
}
|
||||
});
|
||||
action.appendCost(
|
||||
new ChoiceEffect(action, playerId, possibleCosts));
|
||||
action.appendEffect(
|
||||
new AddUntilEndOfPhaseModifierEffect(
|
||||
new UnhastyCompanionParticipatesInSkirmishedModifier(self, self)));
|
||||
return Collections.singletonList(action);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -1,42 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set5.gandalf;
|
||||
|
||||
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;
|
||||
import com.gempukku.lotro.logic.effects.choose.ChooseAndExertCharactersEffect;
|
||||
import com.gempukku.lotro.logic.timing.PlayConditions;
|
||||
|
||||
/**
|
||||
* Set: Battle of Helm's Deep
|
||||
* Side: Free
|
||||
* Culture: Gandalf
|
||||
* Twilight Cost: 3
|
||||
* Type: Event
|
||||
* Game Text: Spell. Maneuver: Spot 3 twilight tokens and exert Gandalf to wound a minion twice.
|
||||
*/
|
||||
public class Card5_018 extends AbstractEvent {
|
||||
public Card5_018() {
|
||||
super(Side.FREE_PEOPLE, 3, Culture.GANDALF, "Fury of the White Rider", Phase.MANEUVER);
|
||||
addKeyword(Keyword.SPELL);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean checkPlayRequirements(LotroGame game, PhysicalCard self) {
|
||||
return PlayConditions.canExert(self, game, Filters.gandalf)
|
||||
&& game.getGameState().getTwilightPool() >= 3;
|
||||
}
|
||||
|
||||
@Override
|
||||
public PlayEventAction getPlayEventCardAction(String playerId, LotroGame game, PhysicalCard self) {
|
||||
PlayEventAction action = new PlayEventAction(self);
|
||||
action.appendCost(
|
||||
new ChooseAndExertCharactersEffect(action, playerId, 1, 1, Filters.gandalf));
|
||||
action.appendEffect(
|
||||
new ChooseAndWoundCharactersEffect(action, playerId, 1, 1, 2, CardType.MINION));
|
||||
return action;
|
||||
}
|
||||
}
|
||||
@@ -1,78 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set5.gandalf;
|
||||
|
||||
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.*;
|
||||
import com.gempukku.lotro.logic.effects.choose.ChooseAndExertCharactersEffect;
|
||||
import com.gempukku.lotro.logic.modifiers.UnhastyCompanionParticipatesInSkirmishedModifier;
|
||||
import com.gempukku.lotro.logic.timing.Effect;
|
||||
import com.gempukku.lotro.logic.timing.PlayConditions;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Set: Battle of Helm's Deep
|
||||
* Side: Free
|
||||
* Culture: Gandalf
|
||||
* Twilight Cost: 4
|
||||
* Type: Companion • Ent
|
||||
* Strength: 10
|
||||
* Vitality: 4
|
||||
* Resistance: 6
|
||||
* Game Text: Unhasty. Assignment: Exert an unbound Hobbit or discard 2 cards from hand to allow Lidenroot to skirmish.
|
||||
* Skirmish: Exert Lidenroot to wound an [ISENGARD] minion he is skirmishing.
|
||||
*/
|
||||
public class Card5_019 extends AbstractCompanion {
|
||||
public Card5_019() {
|
||||
super(4, 10, 4, 6, Culture.GANDALF, Race.ENT, null, "Lindenroot", "Elder Shepherd", true);
|
||||
addKeyword(Keyword.UNHASTY);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends ActivateCardAction> getPhaseActionsInPlay(String playerId, LotroGame game, PhysicalCard self) {
|
||||
if (PlayConditions.canUseFPCardDuringPhase(game, Phase.ASSIGNMENT, self)
|
||||
&& (
|
||||
PlayConditions.canExert(self, game, Race.HOBBIT, Filters.unboundCompanion)
|
||||
|| game.getGameState().getHand(playerId).size() >= 2)) {
|
||||
ActivateCardAction action = new ActivateCardAction(self);
|
||||
List<Effect> possibleCosts = new LinkedList<>();
|
||||
possibleCosts.add(
|
||||
new ChooseAndExertCharactersEffect(action, playerId, 1, 1, Race.HOBBIT, Filters.unboundCompanion) {
|
||||
@Override
|
||||
public String getText(LotroGame game) {
|
||||
return "Exert an unbound Hobbit";
|
||||
}
|
||||
});
|
||||
possibleCosts.add(
|
||||
new ChooseAndDiscardCardsFromHandEffect(action, playerId, false, 2) {
|
||||
@Override
|
||||
public String getText(LotroGame game) {
|
||||
return "Discard 2 cards from hand";
|
||||
}
|
||||
});
|
||||
action.appendCost(
|
||||
new ChoiceEffect(action, playerId, possibleCosts));
|
||||
action.appendEffect(
|
||||
new AddUntilEndOfPhaseModifierEffect(
|
||||
new UnhastyCompanionParticipatesInSkirmishedModifier(self, self)));
|
||||
return Collections.singletonList(action);
|
||||
}
|
||||
if (PlayConditions.canUseFPCardDuringPhase(game, Phase.SKIRMISH, self)
|
||||
&& PlayConditions.canSelfExert(self, game)) {
|
||||
ActivateCardAction action = new ActivateCardAction(self);
|
||||
action.appendCost(
|
||||
new SelfExertEffect(action, self));
|
||||
action.appendEffect(
|
||||
new ChooseAndWoundCharactersEffect(action, playerId, 1, 1, Culture.ISENGARD, CardType.MINION, Filters.inSkirmishAgainst(self)));
|
||||
return Collections.singletonList(action);
|
||||
}
|
||||
return null;
|
||||
|
||||
}
|
||||
}
|
||||
@@ -1,64 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set5.gandalf;
|
||||
|
||||
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.GameUtils;
|
||||
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.PreventableEffect;
|
||||
import com.gempukku.lotro.logic.effects.choose.ChooseAndDiscardCardsFromPlayEffect;
|
||||
import com.gempukku.lotro.logic.effects.choose.ChooseAndExertCharactersEffect;
|
||||
import com.gempukku.lotro.logic.timing.Effect;
|
||||
import com.gempukku.lotro.logic.timing.PlayConditions;
|
||||
|
||||
/**
|
||||
* Set: Battle of Helm's Deep
|
||||
* Side: Free
|
||||
* Culture: Gandalf
|
||||
* Twilight Cost: 3
|
||||
* Type: Event
|
||||
* Game Text: Spell. Maneuver: Exert Gandalf to discard up to 2 shadow possessions. Any Shadow player may discard
|
||||
* a minion to prevent this.
|
||||
*/
|
||||
public class Card5_020 extends AbstractEvent {
|
||||
public Card5_020() {
|
||||
super(Side.FREE_PEOPLE, 3, Culture.GANDALF, "Turn of the Tide", Phase.MANEUVER);
|
||||
addKeyword(Keyword.SPELL);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean checkPlayRequirements(LotroGame game, PhysicalCard self) {
|
||||
return PlayConditions.canExert(self, game, Filters.gandalf);
|
||||
}
|
||||
|
||||
@Override
|
||||
public PlayEventAction getPlayEventCardAction(String playerId, LotroGame game, PhysicalCard self) {
|
||||
PlayEventAction action = new PlayEventAction(self);
|
||||
action.appendCost(
|
||||
new ChooseAndExertCharactersEffect(action, playerId, 1, 1, Filters.gandalf));
|
||||
action.appendEffect(
|
||||
new PreventableEffect(action,
|
||||
new ChooseAndDiscardCardsFromPlayEffect(action, playerId, 0, 2, Side.SHADOW, CardType.POSSESSION) {
|
||||
@Override
|
||||
public String getText(LotroGame game) {
|
||||
return "Discard up to 2 shadow possessions";
|
||||
}
|
||||
}, GameUtils.getShadowPlayers(game),
|
||||
new PreventableEffect.PreventionCost() {
|
||||
@Override
|
||||
public Effect createPreventionCostForPlayer(CostToEffectAction subAction, String playerId) {
|
||||
return new ChooseAndDiscardCardsFromPlayEffect(subAction, playerId, 1, 1, CardType.MINION) {
|
||||
@Override
|
||||
public String getText(LotroGame game) {
|
||||
return "Discard a minion";
|
||||
}
|
||||
};
|
||||
}
|
||||
}
|
||||
));
|
||||
return action;
|
||||
}
|
||||
}
|
||||
@@ -27,17 +27,49 @@
|
||||
vitality: 4
|
||||
resistance: 6
|
||||
keywords: Unhasty
|
||||
/*requires: {
|
||||
|
||||
}
|
||||
effects: [
|
||||
{
|
||||
|
||||
}
|
||||
{
|
||||
|
||||
}
|
||||
]*/
|
||||
{
|
||||
type: activated
|
||||
phase: assignment
|
||||
cost: {
|
||||
type: choice
|
||||
texts: [
|
||||
Exert an unbound Hobbit
|
||||
Discard 2 cards from hand
|
||||
]
|
||||
effects: [
|
||||
{
|
||||
type: exert
|
||||
filter: choose(unbound,hobbit)
|
||||
}
|
||||
{
|
||||
type: discardFromHand
|
||||
forced: false
|
||||
count: 2
|
||||
}
|
||||
]
|
||||
}
|
||||
effect: {
|
||||
type: addModifier
|
||||
modifier: {
|
||||
type: unhastyCompanionCanParticipateInSkirmishes
|
||||
filter: self
|
||||
}
|
||||
}
|
||||
}
|
||||
{
|
||||
type: activated
|
||||
phase: fellowship
|
||||
cost: {
|
||||
type: exert
|
||||
filter: self
|
||||
}
|
||||
effect: {
|
||||
type: heal
|
||||
filter: choose(unbound,hobbit)
|
||||
}
|
||||
}
|
||||
]
|
||||
gametext: <b>Unhasty</b>.<br><b>Assignment:</b> Exert an unbound Hobbit or discard 2 cards from hand to allow Birchseed to skirmish.<br><b>Fellowship:</b> Exert Birchseed to heal an unbound Hobbit.
|
||||
lore: Slender and royal, he presided over many Entmoots.
|
||||
promotext: ""
|
||||
@@ -74,20 +106,45 @@
|
||||
Spell
|
||||
Maneuver
|
||||
]
|
||||
/*requires: {
|
||||
|
||||
}
|
||||
effects: {
|
||||
type: event
|
||||
cost: {
|
||||
|
||||
type: exert
|
||||
filter: choose(name(Gandalf))
|
||||
times: 3
|
||||
},
|
||||
effect: [
|
||||
{
|
||||
|
||||
type: modifyStrength
|
||||
filter: choose(unbound,companion,signet(Gandalf))
|
||||
amount: 5
|
||||
until: regroup
|
||||
memorize: chosenCompanion
|
||||
}
|
||||
{
|
||||
type: addKeyword
|
||||
filter: memory(chosenCompanion)
|
||||
keyword: defender
|
||||
amount: 1
|
||||
until: regroup
|
||||
}
|
||||
{
|
||||
type: addKeyword
|
||||
filter: memory(chosenCompanion)
|
||||
keyword: damage
|
||||
amount: 2
|
||||
until: regroup
|
||||
}
|
||||
{
|
||||
type: addModifier
|
||||
modifier: {
|
||||
type: cantTakeWounds
|
||||
filter: memory(chosenCompanion)
|
||||
}
|
||||
until: regroup
|
||||
}
|
||||
]
|
||||
}*/
|
||||
}
|
||||
gametext: <b>Spell</b>.<br><b>Maneuver:</b> Exert Gandalf 3 times to make an unbound companion with the Gandalf signet strength +5, <b>defender +1</b>, <b>damage +2</b>, and unable to take wounds until the regroup phase.
|
||||
lore: Down leaped Shadowfax, like a deer....
|
||||
promotext: ""
|
||||
@@ -125,17 +182,49 @@
|
||||
vitality: 3
|
||||
resistance: 6
|
||||
keywords: Unhasty
|
||||
/*requires: {
|
||||
|
||||
}
|
||||
effects: [
|
||||
{
|
||||
|
||||
}
|
||||
{
|
||||
|
||||
}
|
||||
]*/
|
||||
{
|
||||
type: activated
|
||||
phase: assignment
|
||||
cost: {
|
||||
type: choice
|
||||
texts: [
|
||||
Exert an unbound Hobbit
|
||||
Discard 2 cards from hand
|
||||
]
|
||||
effects: [
|
||||
{
|
||||
type: exert
|
||||
filter: choose(unbound,hobbit)
|
||||
}
|
||||
{
|
||||
type: discardFromHand
|
||||
forced: false
|
||||
count: 2
|
||||
}
|
||||
]
|
||||
}
|
||||
effect: {
|
||||
type: addModifier
|
||||
modifier: {
|
||||
type: unhastyCompanionCanParticipateInSkirmishes
|
||||
filter: self
|
||||
}
|
||||
}
|
||||
}
|
||||
{
|
||||
type: activated
|
||||
phase: fellowship
|
||||
cost: {
|
||||
type: exert
|
||||
filter: self
|
||||
}
|
||||
effect: {
|
||||
type: heal
|
||||
filter: choose(unbound,hobbit)
|
||||
}
|
||||
}
|
||||
]
|
||||
gametext: <b>Unhasty</b>.<br><b>Assignment:</b> Exert an unbound Hobbit or discard 2 cards from hand to allow this companion to skirmish.
|
||||
lore: We keep off strangers and the foolhardy; and we train and we teach, we walk and we weed.'
|
||||
promotext: ""
|
||||
@@ -172,20 +261,24 @@
|
||||
Spell
|
||||
Maneuver
|
||||
]
|
||||
/*requires: {
|
||||
|
||||
}
|
||||
effects: {
|
||||
type: event
|
||||
requires: {
|
||||
type: canSpotTwilight
|
||||
amount: 3
|
||||
}
|
||||
cost: {
|
||||
|
||||
type: exert
|
||||
filter: choose(name(Gandalf))
|
||||
},
|
||||
effect: [
|
||||
{
|
||||
|
||||
type: wound
|
||||
filter: choose(minion)
|
||||
times: 2
|
||||
}
|
||||
]
|
||||
}*/
|
||||
}
|
||||
gametext: <b>Spell</b>.<br><b>Maneuver:</b> Spot 3 twilight tokens and exert Gandalf to wound a minion twice.
|
||||
lore: The White Rider was upon them, and the terror of his coming filled the enemy with madness.
|
||||
promotext: ""
|
||||
@@ -224,17 +317,61 @@
|
||||
vitality: 4
|
||||
resistance: 6
|
||||
keywords: Unhasty
|
||||
/*requires: {
|
||||
|
||||
}
|
||||
effects: [
|
||||
{
|
||||
|
||||
}
|
||||
{
|
||||
|
||||
}
|
||||
]*/
|
||||
{
|
||||
type: activated
|
||||
phase: assignment
|
||||
cost: {
|
||||
type: choice
|
||||
texts: [
|
||||
Exert an unbound Hobbit
|
||||
Discard 2 cards from hand
|
||||
]
|
||||
effects: [
|
||||
{
|
||||
type: exert
|
||||
filter: choose(unbound,hobbit)
|
||||
}
|
||||
{
|
||||
type: discardFromHand
|
||||
forced: false
|
||||
count: 2
|
||||
}
|
||||
]
|
||||
}
|
||||
effect: {
|
||||
type: addModifier
|
||||
modifier: {
|
||||
type: unhastyCompanionCanParticipateInSkirmishes
|
||||
filter: self
|
||||
}
|
||||
}
|
||||
}
|
||||
{
|
||||
type: activated
|
||||
phase: fellowship
|
||||
cost: {
|
||||
type: exert
|
||||
filter: self
|
||||
}
|
||||
effect: {
|
||||
type: heal
|
||||
filter: choose(unbound,hobbit)
|
||||
}
|
||||
}
|
||||
{
|
||||
type: activated
|
||||
phase: skirmish
|
||||
cost: {
|
||||
type: exert
|
||||
filter: self
|
||||
}
|
||||
effect: {
|
||||
type: wound
|
||||
filter: choose(culture(isengard),minion,inSkirmishAgainst(self))
|
||||
}
|
||||
}
|
||||
]
|
||||
gametext: <b>Unhasty</b>.<br><b>Assignment:</b> Exert an unbound Hobbit or discard 2 cards from hand to allow Lindenroot to skirmish.<br><b>Skirmish:</b> Exert Lindenroot to wound an [isengard] minion he is skirmishing.
|
||||
lore: A most well-founded and considerate Ent.
|
||||
promotext: ""
|
||||
@@ -271,20 +408,30 @@
|
||||
Spell
|
||||
Maneuver
|
||||
]
|
||||
/*requires: {
|
||||
|
||||
}
|
||||
effects: {
|
||||
type: event
|
||||
cost: {
|
||||
|
||||
type: exert
|
||||
filter: choose(name(Gandalf))
|
||||
},
|
||||
effect: [
|
||||
{
|
||||
|
||||
type: preventable
|
||||
player: shadow
|
||||
text: Would you like to discard a minion to prevent Free Player discarding up to 2 shadow possessions?
|
||||
cost: {
|
||||
type: discard
|
||||
player: shadow
|
||||
filter: choose(minion)
|
||||
}
|
||||
effect: {
|
||||
type: discard
|
||||
filter: choose(side(shadow),possession)
|
||||
count: 0-2
|
||||
}
|
||||
}
|
||||
]
|
||||
}*/
|
||||
}
|
||||
gametext: <b>Spell</b>.<br><b>Maneuver:</b> Exert Gandalf to discard up to 2 Shadow possessions. Any Shadow player may discard a minion to prevent this.
|
||||
lore: Indeed my friends, none of you have any weapon that could hurt me.'
|
||||
promotext: ""
|
||||
@@ -80,6 +80,7 @@ public class ModifierSourceFactory {
|
||||
modifierProducers.put("shadowhasinitiative", new ShadowHasInitiative());
|
||||
modifierProducers.put("shadowusesvitinsteadofstr", new ShadowUsesVitInsteadOfStr());
|
||||
modifierProducers.put("skipphase", new SkipPhase());
|
||||
modifierProducers.put("unhastycompanioncanparticipateinskirmishes", new UnhastyCompanionCanParticipateInSkirmishes());
|
||||
}
|
||||
|
||||
public ModifierSource getModifier(JSONObject object, CardGenerationEnvironment environment) throws InvalidCardDefinitionException {
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
package com.gempukku.lotro.cards.build.field.effect.modifier;
|
||||
|
||||
import com.gempukku.lotro.cards.build.*;
|
||||
import com.gempukku.lotro.cards.build.field.FieldUtils;
|
||||
import com.gempukku.lotro.logic.modifiers.UnhastyCompanionParticipatesInSkirmishedModifier;
|
||||
import org.json.simple.JSONObject;
|
||||
|
||||
public class UnhastyCompanionCanParticipateInSkirmishes implements ModifierSourceProducer {
|
||||
@Override
|
||||
public ModifierSource getModifierSource(JSONObject object, CardGenerationEnvironment environment) throws InvalidCardDefinitionException {
|
||||
FieldUtils.validateAllowedFields(object, "filter", "requires");
|
||||
|
||||
final String filter = FieldUtils.getString(object.get("filter"), "filter");
|
||||
final JSONObject[] conditionArray = FieldUtils.getObjectArray(object.get("requires"), "requires");
|
||||
|
||||
final FilterableSource filterableSource = environment.getFilterFactory().generateFilter(filter, environment);
|
||||
final Requirement[] requirements = environment.getRequirementFactory().getRequirements(conditionArray, environment);
|
||||
|
||||
return actionContext -> new UnhastyCompanionParticipatesInSkirmishedModifier(actionContext.getSource(),
|
||||
new RequirementCondition(requirements, actionContext),
|
||||
filterableSource.getFilterable(actionContext));
|
||||
}
|
||||
}
|
||||
@@ -5,9 +5,12 @@ import com.gempukku.lotro.game.PhysicalCard;
|
||||
import com.gempukku.lotro.game.state.LotroGame;
|
||||
|
||||
public class UnhastyCompanionParticipatesInSkirmishedModifier extends AbstractModifier {
|
||||
|
||||
public UnhastyCompanionParticipatesInSkirmishedModifier(PhysicalCard source, Filterable affectFilter) {
|
||||
super(source, "Can participate in archery and skirmishes", affectFilter, ModifierEffect.PRESENCE_MODIFIER);
|
||||
this(source, null, affectFilter);
|
||||
}
|
||||
|
||||
public UnhastyCompanionParticipatesInSkirmishedModifier(PhysicalCard source, Condition condition, Filterable affectFilter) {
|
||||
super(source, "Can participate in archery and skirmishes", affectFilter, condition, ModifierEffect.PRESENCE_MODIFIER);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user