Migrated Gandalf cards in set 5 to hjson

This commit is contained in:
MarcinSc
2024-04-21 23:41:43 +07:00
parent 5342feff9b
commit f0f57cdf1a
10 changed files with 224 additions and 449 deletions

View File

@@ -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;
}
}

View File

@@ -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;
}
}

View File

@@ -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;
}
}

View File

@@ -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;
}
}

View File

@@ -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;
}
}

View File

@@ -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;
}
}

View File

@@ -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: ""

View File

@@ -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 {

View File

@@ -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));
}
}

View File

@@ -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