diff --git a/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/modifiers/StrengthModifier.java b/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/modifiers/StrengthModifier.java index a6adcdfae..21eca82c8 100644 --- a/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/modifiers/StrengthModifier.java +++ b/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/modifiers/StrengthModifier.java @@ -9,8 +9,8 @@ import com.gempukku.lotro.logic.modifiers.ModifiersQuerying; public class StrengthModifier extends AbstractModifier { private int _modifier; - public StrengthModifier(PhysicalCard source, String text, Filter affectFilter, int modifier) { - super(source, text, affectFilter); + public StrengthModifier(PhysicalCard source, Filter affectFilter, int modifier) { + super(source, "Strength +" + modifier, affectFilter); _modifier = modifier; } diff --git a/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_003.java b/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_003.java index 6ab0af16f..c0a95cf1a 100644 --- a/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_003.java +++ b/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_003.java @@ -44,7 +44,7 @@ public class Card1_003 extends AbstractLotroCardBlueprint { int bonus = (attachedDwarvenHandWeapons.size() == 0) ? 2 : 3; action.addEffect( new AddUntilEndOfPhaseModifierEffect( - new StrengthModifier(self, "+" + bonus + " Strength", Filters.sameCard(dwarf), bonus), Phase.SKIRMISH + new StrengthModifier(self, Filters.sameCard(dwarf), bonus), Phase.SKIRMISH ) ); } diff --git a/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_009.java b/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_009.java index 0f7c19431..324ccd2e7 100644 --- a/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_009.java +++ b/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_009.java @@ -51,7 +51,7 @@ public class Card1_009 extends AbstractAttachableFPPossession { @Override public Modifier getAlwaysOnEffect(PhysicalCard self) { - return new StrengthModifier(self, "Strength +2", Filters.sameCard(self.getAttachedTo()), 2); + return new StrengthModifier(self, Filters.sameCard(self.getAttachedTo()), 2); } @Override diff --git a/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_011.java b/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_011.java index 966b5a1c7..db5f38464 100644 --- a/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_011.java +++ b/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_011.java @@ -47,7 +47,7 @@ public class Card1_011 extends AbstractCompanion { @Override public Modifier getAlwaysOnEffect(final PhysicalCard self) { - return new StrengthModifier(self, "Strength +2", + return new StrengthModifier(self, new Filter() { @Override public boolean accepts(GameState gameState, ModifiersQuerying modifiersQuerying, PhysicalCard physicalCard) { diff --git a/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_013.java b/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_013.java index 7936607ce..90d173959 100644 --- a/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_013.java +++ b/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_013.java @@ -49,7 +49,7 @@ public class Card1_013 extends AbstractCompanion { CostToEffectAction action = new CostToEffectAction(self, "Exert Gimli to make him strength +2"); action.addCost(new ExertCharacterEffect(self)); - action.addEffect(new AddUntilEndOfPhaseModifierEffect(new StrengthModifier(self, "Strength+2", Filters.sameCard(self), 2), Phase.SKIRMISH)); + action.addEffect(new AddUntilEndOfPhaseModifierEffect(new StrengthModifier(self, Filters.sameCard(self), 2), Phase.SKIRMISH)); result.add(action); } diff --git a/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_024.java b/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_024.java index 93b91c6d8..069ceb983 100644 --- a/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_024.java +++ b/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_024.java @@ -47,7 +47,7 @@ public class Card1_024 extends AbstractLotroCardBlueprint { @Override public Modifier getAlwaysOnEffect(PhysicalCard self) { - return new StrengthModifier(self, "While a Dwarf skirmishes a MORIA minion, that Dwarf is strength +1", + return new StrengthModifier(self, Filters.and( Filters.keyword(Keyword.DWARF), new Filter() { diff --git a/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_026.java b/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_026.java index 4fedcf289..3c81e0c28 100644 --- a/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_026.java +++ b/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_026.java @@ -45,7 +45,7 @@ public class Card1_026 extends AbstractLotroCardBlueprint { GameState gameState = game.getGameState(); int bonus = (game.getModifiersQuerying().hasKeyword(gameState, gameState.getCurrentSite(), Keyword.UNDERGROUND)) ? 4 : 2; game.getModifiersEnvironment().addUntilEndOfPhaseModifier( - new StrengthModifier(self, "Strength +" + bonus, Filters.sameCard(dwarf), bonus), Phase.SKIRMISH); + new StrengthModifier(self, Filters.sameCard(dwarf), bonus), Phase.SKIRMISH); } } ); diff --git a/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_029.java b/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_029.java index 7b7652c4a..8ba8d948c 100644 --- a/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_029.java +++ b/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_029.java @@ -48,7 +48,7 @@ public class Card1_029 extends AbstractLotroCardBlueprint { new ChooseActiveCardEffect(playerId, "Choose an Elf", Filters.keyword(Keyword.ELF)) { @Override protected void cardSelected(LotroGame game, final PhysicalCard elf) { - action.addEffect(new AddUntilEndOfPhaseModifierEffect(new StrengthModifier(self, "Strength +1", Filters.sameCard(elf), 1), Phase.SKIRMISH)); + action.addEffect(new AddUntilEndOfPhaseModifierEffect(new StrengthModifier(self, Filters.sameCard(elf), 1), Phase.SKIRMISH)); action.addEffect(new AddUntilEndOfPhaseActionProxyEffect( new AbstractActionProxy() { @Override diff --git a/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_030.java b/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_030.java index bc24f3817..069234c95 100644 --- a/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_030.java +++ b/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_030.java @@ -34,7 +34,7 @@ public class Card1_030 extends AbstractCompanion { @Override public Modifier getAlwaysOnEffect(final PhysicalCard self) { - return new StrengthModifier(self, "Strength +3", + return new StrengthModifier(self, new Filter() { @Override public boolean accepts(GameState gameState, ModifiersQuerying modifiersQuerying, PhysicalCard physicalCard) { diff --git a/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_032.java b/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_032.java index 8fcf6f351..64a5acf78 100644 --- a/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_032.java +++ b/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_032.java @@ -51,7 +51,7 @@ public class Card1_032 extends AbstractLotroCardBlueprint { bonus = 4; } - action.addEffect(new AddUntilEndOfPhaseModifierEffect(new StrengthModifier(self, "Strength +" + bonus, Filters.sameCard(elf), bonus), Phase.SKIRMISH)); + action.addEffect(new AddUntilEndOfPhaseModifierEffect(new StrengthModifier(self, Filters.sameCard(elf), bonus), Phase.SKIRMISH)); } }); return Collections.singletonList(action); diff --git a/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_033.java b/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_033.java index d0104a126..d1dda50a8 100644 --- a/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_033.java +++ b/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_033.java @@ -50,7 +50,7 @@ public class Card1_033 extends AbstractAttachableFPPossession { @Override public Modifier getAlwaysOnEffect(PhysicalCard self) { - return new StrengthModifier(self, "Strength +1", Filters.sameCard(self.getAttachedTo()), 1); + return new StrengthModifier(self, Filters.sameCard(self.getAttachedTo()), 1); } @Override diff --git a/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_037.java b/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_037.java index 831455d3e..bb9e81840 100644 --- a/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_037.java +++ b/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_037.java @@ -51,7 +51,7 @@ public class Card1_037 extends AbstractLotroCardBlueprint { bonus = 4; } - action.addEffect(new AddUntilEndOfPhaseModifierEffect(new StrengthModifier(self, "Strength +" + bonus, Filters.sameCard(elf), bonus), Phase.SKIRMISH)); + action.addEffect(new AddUntilEndOfPhaseModifierEffect(new StrengthModifier(self, Filters.sameCard(elf), bonus), Phase.SKIRMISH)); } }); diff --git a/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_047.java b/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_047.java index e40c41e78..6ec2cd39e 100644 --- a/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_047.java +++ b/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_047.java @@ -84,7 +84,7 @@ public class Card1_047 extends AbstractAttachableFPPossession { new ChoiceEffect(action, playerId, possibleCosts, true)); action.addEffect( new AddUntilEndOfPhaseModifierEffect( - new StrengthModifier(self, "Strength +1", Filters.sameCard(self.getAttachedTo()), 1), + new StrengthModifier(self, Filters.sameCard(self.getAttachedTo()), 1), Phase.SKIRMISH)); } @@ -93,6 +93,6 @@ public class Card1_047 extends AbstractAttachableFPPossession { @Override public Modifier getAlwaysOnEffect(PhysicalCard self) { - return new StrengthModifier(self, "Strength +2", Filters.sameCard(self.getAttachedTo()), 2); + return new StrengthModifier(self, Filters.sameCard(self.getAttachedTo()), 2); } } diff --git a/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_048.java b/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_048.java new file mode 100644 index 000000000..5070a6bf6 --- /dev/null +++ b/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_048.java @@ -0,0 +1,62 @@ +package com.gempukku.lotro.cards.set1.elven; + +import com.gempukku.lotro.cards.AbstractCompanion; +import com.gempukku.lotro.cards.modifiers.StrengthModifier; +import com.gempukku.lotro.common.Culture; +import com.gempukku.lotro.common.Keyword; +import com.gempukku.lotro.filters.Filter; +import com.gempukku.lotro.filters.Filters; +import com.gempukku.lotro.game.PhysicalCard; +import com.gempukku.lotro.game.state.GameState; +import com.gempukku.lotro.game.state.LotroGame; +import com.gempukku.lotro.logic.modifiers.Modifier; +import com.gempukku.lotro.logic.modifiers.ModifiersQuerying; +import com.gempukku.lotro.logic.timing.Action; +import com.gempukku.lotro.logic.timing.EffectResult; + +import java.util.LinkedList; +import java.util.List; + +/** + * Set: The Fellowship of the Ring + * Side: Free + * Culture: Elven + * Twilight Cost: 2 + * Type: Companion • Elf + * Strength: 5 + * Vitality: 3 + * Resistance: 6 + * Game Text: To play, spot an Elf. While Haldir is at site 6, 7, or 8, he is strength +2. + */ +public class Card1_048 extends AbstractCompanion { + public Card1_048() { + super(2, 5, 3, Culture.ELVEN, "Haldir", "1_48", true); + addKeyword(Keyword.ELF); + } + + @Override + public List getPlayableWhenActions(String playerId, LotroGame game, EffectResult effectResult, PhysicalCard self) { + List actions = new LinkedList(); + + if (Filters.canSpot(game.getGameState(), game.getModifiersQuerying(), Filters.keyword(Keyword.ELF))) + appendPlayCompanionActions(actions, game, self); + + appendHealCompanionActions(actions, game, self); + + return actions; + } + + @Override + public Modifier getAlwaysOnEffect(PhysicalCard self) { + return new StrengthModifier(self, + Filters.and( + Filters.sameCard(self), + new Filter() { + @Override + public boolean accepts(GameState gameState, ModifiersQuerying modifiersQuerying, PhysicalCard physicalCard) { + int currentSiteNumber = gameState.getCurrentSiteNumber(); + return (currentSiteNumber == 6 || currentSiteNumber == 7 || currentSiteNumber == 8); + } + }), 2); + } +} diff --git a/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_051.java b/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_051.java index aa10f17cb..bdd37c856 100644 --- a/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_051.java +++ b/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_051.java @@ -35,7 +35,7 @@ public class Card1_051 extends AbstractCompanion { @Override public Modifier getAlwaysOnEffect(final PhysicalCard self) { - return new StrengthModifier(self, "Strength +3", + return new StrengthModifier(self, new Filter() { @Override public boolean accepts(GameState gameState, ModifiersQuerying modifiersQuerying, PhysicalCard physicalCard) { diff --git a/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/isengard/Card1_145.java b/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/isengard/Card1_145.java index 337974cf7..1c2a707e8 100644 --- a/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/isengard/Card1_145.java +++ b/gemp-lotr/lotro-cards/src/main/java/com/gempukku/lotro/cards/set1/isengard/Card1_145.java @@ -56,7 +56,7 @@ public class Card1_145 extends AbstractMinion { int spotCount = getValidatedResult(result); action.addEffect( new AddUntilEndOfPhaseModifierEffect( - new StrengthModifier(self, "Strength+" + spotCount, Filters.sameCard(self), spotCount) + new StrengthModifier(self, Filters.sameCard(self), spotCount) , Phase.SKIRMISH)); } }