diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/men/Card15_087.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/men/Card15_087.java index eb263190b..5f0490c5d 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/men/Card15_087.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/men/Card15_087.java @@ -3,7 +3,6 @@ package com.gempukku.lotro.cards.set15.men; import com.gempukku.lotro.cards.AbstractMinion; import com.gempukku.lotro.cards.TriggerConditions; import com.gempukku.lotro.cards.effects.TakeControlOfASiteEffect; -import com.gempukku.lotro.common.CardType; import com.gempukku.lotro.common.Culture; import com.gempukku.lotro.common.PossessionClass; import com.gempukku.lotro.common.Race; @@ -12,7 +11,6 @@ import com.gempukku.lotro.game.PhysicalCard; import com.gempukku.lotro.game.state.LotroGame; import com.gempukku.lotro.logic.actions.OptionalTriggerAction; import com.gempukku.lotro.logic.modifiers.Modifier; -import com.gempukku.lotro.logic.modifiers.SpotCondition; import com.gempukku.lotro.logic.modifiers.StrengthModifier; import com.gempukku.lotro.logic.timing.EffectResult; @@ -38,7 +36,7 @@ public class Card15_087 extends AbstractMinion { @Override public Modifier getAlwaysOnModifier(PhysicalCard self) { - return new StrengthModifier(self, self, new SpotCondition(CardType.COMPANION, Filters.not(Filters.lessStrengthThan(12))), 5); + return new StrengthModifier(self, Filters.and(self, Filters.canSpotCompanionWithStrengthAtLeast(12)), 5); } @Override diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/men/Card15_094.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/men/Card15_094.java index 7b4f112f5..62f34683d 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/men/Card15_094.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/men/Card15_094.java @@ -5,7 +5,6 @@ import com.gempukku.lotro.cards.PlayConditions; import com.gempukku.lotro.cards.effects.ChoiceEffect; import com.gempukku.lotro.cards.effects.RemoveBurdenEffect; import com.gempukku.lotro.cards.effects.TakeControlOfASiteEffect; -import com.gempukku.lotro.common.CardType; import com.gempukku.lotro.common.Culture; import com.gempukku.lotro.common.Phase; import com.gempukku.lotro.common.Race; @@ -15,7 +14,6 @@ import com.gempukku.lotro.game.state.LotroGame; import com.gempukku.lotro.logic.actions.ActivateCardAction; import com.gempukku.lotro.logic.effects.RemoveThreatsEffect; import com.gempukku.lotro.logic.modifiers.Modifier; -import com.gempukku.lotro.logic.modifiers.SpotCondition; import com.gempukku.lotro.logic.modifiers.StrengthModifier; import com.gempukku.lotro.logic.timing.Action; import com.gempukku.lotro.logic.timing.Effect; @@ -49,7 +47,7 @@ public class Card15_094 extends AbstractMinion { @Override public Modifier getAlwaysOnModifier(PhysicalCard self) { - return new StrengthModifier(self, self, new SpotCondition(CardType.COMPANION, Filters.not(Filters.lessStrengthThan(10))), 3); + return new StrengthModifier(self, Filters.and(self, Filters.canSpotCompanionWithStrengthAtLeast(10)), 3); } @Override diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/orc/Card15_100.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/orc/Card15_100.java index c8d248049..298043748 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/orc/Card15_100.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/orc/Card15_100.java @@ -3,7 +3,6 @@ package com.gempukku.lotro.cards.set15.orc; import com.gempukku.lotro.cards.AbstractMinion; import com.gempukku.lotro.cards.PlayConditions; import com.gempukku.lotro.cards.effects.choose.ChooseAndAddUntilEOPStrengthBonusEffect; -import com.gempukku.lotro.common.CardType; import com.gempukku.lotro.common.Culture; import com.gempukku.lotro.common.Phase; import com.gempukku.lotro.common.Race; @@ -13,7 +12,6 @@ import com.gempukku.lotro.game.state.LotroGame; import com.gempukku.lotro.logic.actions.ActivateCardAction; import com.gempukku.lotro.logic.effects.RemoveThreatsEffect; import com.gempukku.lotro.logic.modifiers.Modifier; -import com.gempukku.lotro.logic.modifiers.SpotCondition; import com.gempukku.lotro.logic.modifiers.StrengthModifier; import com.gempukku.lotro.logic.timing.Action; @@ -39,7 +37,7 @@ public class Card15_100 extends AbstractMinion { @Override public Modifier getAlwaysOnModifier(PhysicalCard self) { - return new StrengthModifier(self, self, new SpotCondition(CardType.COMPANION, Filters.not(Filters.lessStrengthThan(12))), 5); + return new StrengthModifier(self, Filters.and(self, Filters.canSpotCompanionWithStrengthAtLeast(12)), 5); } @Override diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/orc/Card15_101.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/orc/Card15_101.java index daa8d2d0a..ea8c2153a 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/orc/Card15_101.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/orc/Card15_101.java @@ -12,7 +12,6 @@ import com.gempukku.lotro.game.state.LotroGame; import com.gempukku.lotro.logic.actions.OptionalTriggerAction; import com.gempukku.lotro.logic.effects.AddThreatsEffect; import com.gempukku.lotro.logic.modifiers.Modifier; -import com.gempukku.lotro.logic.modifiers.SpotCondition; import com.gempukku.lotro.logic.modifiers.StrengthModifier; import com.gempukku.lotro.logic.timing.EffectResult; @@ -50,6 +49,6 @@ public class Card15_101 extends AbstractMinion { @Override public Modifier getAlwaysOnModifier(PhysicalCard self) { - return new StrengthModifier(self, self, new SpotCondition(CardType.COMPANION, Filters.not(Filters.lessStrengthThan(10))), 3); + return new StrengthModifier(self, Filters.and(self, Filters.canSpotCompanionWithStrengthAtLeast(10)), 3); } } diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/orc/Card15_105.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/orc/Card15_105.java index 7cb76e688..ab7629b77 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/orc/Card15_105.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/orc/Card15_105.java @@ -12,7 +12,6 @@ import com.gempukku.lotro.game.state.LotroGame; import com.gempukku.lotro.logic.actions.OptionalTriggerAction; import com.gempukku.lotro.logic.effects.AddThreatsEffect; import com.gempukku.lotro.logic.modifiers.Modifier; -import com.gempukku.lotro.logic.modifiers.SpotCondition; import com.gempukku.lotro.logic.modifiers.StrengthModifier; import com.gempukku.lotro.logic.timing.EffectResult; @@ -50,7 +49,6 @@ public class Card15_105 extends AbstractMinion { @Override public Modifier getAlwaysOnModifier(PhysicalCard self) { - return new StrengthModifier(self, self, - new SpotCondition(CardType.COMPANION, Filters.not(Filters.lessStrengthThan(13))), 7); + return new StrengthModifier(self, Filters.and(self, Filters.canSpotCompanionWithStrengthAtLeast(13)), 7); } } diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/uruk_hai/Card15_175.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/uruk_hai/Card15_175.java index 5cd325069..218138f92 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/uruk_hai/Card15_175.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/uruk_hai/Card15_175.java @@ -12,7 +12,6 @@ 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.modifiers.Modifier; -import com.gempukku.lotro.logic.modifiers.SpotCondition; import com.gempukku.lotro.logic.modifiers.StrengthModifier; import com.gempukku.lotro.logic.timing.Action; import com.gempukku.lotro.logic.timing.Effect; @@ -41,7 +40,7 @@ public class Card15_175 extends AbstractMinion { @Override public Modifier getAlwaysOnModifier(PhysicalCard self) { - return new StrengthModifier(self, self, new SpotCondition(CardType.COMPANION, Filters.not(Filters.lessStrengthThan(10))), 2); + return new StrengthModifier(self, Filters.and(self, Filters.canSpotCompanionWithStrengthAtLeast(10)), 2); } @Override diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/uruk_hai/Card15_178.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/uruk_hai/Card15_178.java index d2f9a3ca7..e1c3a5168 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/uruk_hai/Card15_178.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/uruk_hai/Card15_178.java @@ -13,7 +13,6 @@ import com.gempukku.lotro.game.PhysicalCard; import com.gempukku.lotro.game.state.LotroGame; import com.gempukku.lotro.logic.actions.OptionalTriggerAction; import com.gempukku.lotro.logic.modifiers.Modifier; -import com.gempukku.lotro.logic.modifiers.SpotCondition; import com.gempukku.lotro.logic.modifiers.StrengthModifier; import com.gempukku.lotro.logic.timing.EffectResult; @@ -41,7 +40,7 @@ public class Card15_178 extends AbstractMinion { @Override public Modifier getAlwaysOnModifier(PhysicalCard self) { - return new StrengthModifier(self, self, new SpotCondition(CardType.COMPANION, Filters.not(Filters.lessStrengthThan(12))), 4); + return new StrengthModifier(self, Filters.and(self, Filters.canSpotCompanionWithStrengthAtLeast(12)), 4); } @Override diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set17/orc/Card17_088.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set17/orc/Card17_088.java index 99fbc3322..540578469 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set17/orc/Card17_088.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set17/orc/Card17_088.java @@ -4,7 +4,6 @@ import com.gempukku.lotro.cards.AbstractMinion; import com.gempukku.lotro.cards.PlayConditions; import com.gempukku.lotro.cards.TriggerConditions; import com.gempukku.lotro.cards.effects.SelfDiscardEffect; -import com.gempukku.lotro.common.CardType; import com.gempukku.lotro.common.Culture; import com.gempukku.lotro.common.Phase; import com.gempukku.lotro.common.Race; @@ -13,7 +12,6 @@ import com.gempukku.lotro.game.PhysicalCard; import com.gempukku.lotro.game.state.LotroGame; import com.gempukku.lotro.logic.actions.RequiredTriggerAction; import com.gempukku.lotro.logic.modifiers.Modifier; -import com.gempukku.lotro.logic.modifiers.SpotCondition; import com.gempukku.lotro.logic.modifiers.StrengthModifier; import com.gempukku.lotro.logic.timing.EffectResult; @@ -39,7 +37,7 @@ public class Card17_088 extends AbstractMinion { @Override public Modifier getAlwaysOnModifier(PhysicalCard self) { - return new StrengthModifier(self, self, new SpotCondition(CardType.COMPANION, Filters.not(Filters.lessStrengthThan(12))), 4); + return new StrengthModifier(self, Filters.and(self, Filters.canSpotCompanionWithStrengthAtLeast(12)), 4); } @Override diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/filters/Filters.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/filters/Filters.java index 89f516769..ebc7c284d 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/filters/Filters.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/filters/Filters.java @@ -57,7 +57,6 @@ public class Filters { _keywordFilterMap.put(Keyword.BESIEGER, Filters.and(CardType.MINION, keyword(Keyword.BESIEGER))); } - public static boolean canSpot(GameState gameState, ModifiersQuerying modifiersQuerying, Filterable... filters) { Filter filter = Filters.and(filters); SpotFilterCardInPlayVisitor visitor = new SpotFilterCardInPlayVisitor(gameState, modifiersQuerying, filter); @@ -100,6 +99,15 @@ public class Filters { // Filters available + public static Filter canSpotCompanionWithStrengthAtLeast(final int strength) { + return new Filter() { + @Override + public boolean accepts(GameState gameState, ModifiersQuerying modifiersQuerying, PhysicalCard physicalCard) { + return Filters.canSpot(gameState, modifiersQuerying, CardType.COMPANION, Filters.not(Filters.lessStrengthThan(strength))); + } + }; + } + public static Filter lessVitalityThan(final int vitality) { return new Filter() { @Override