From a9628b6f8550463ae1760f4158260a1fa56522af Mon Sep 17 00:00:00 2001 From: "marcins78@gmail.com" Date: Fri, 9 Sep 2011 15:33:13 +0000 Subject: [PATCH] Fixing how possession class uniquness on character is checked. --- .../lotro/cards/AbstractAttachable.java | 35 +++++++++++++++++-- .../cards/AbstractAttachableFPPossession.java | 2 +- .../lotro/cards/set1/dwarven/Card1_008.java | 2 +- .../lotro/cards/set1/dwarven/Card1_009.java | 2 +- .../lotro/cards/set1/dwarven/Card1_014.java | 2 +- .../lotro/cards/set1/dwarven/Card1_015.java | 2 +- .../lotro/cards/set1/elven/Card1_031.java | 2 +- .../lotro/cards/set1/elven/Card1_033.java | 2 +- .../lotro/cards/set1/elven/Card1_041.java | 2 +- .../lotro/cards/set1/elven/Card1_042.java | 2 +- .../lotro/cards/set1/elven/Card1_047.java | 2 +- .../lotro/cards/set1/gandalf/Card1_074.java | 2 +- .../lotro/cards/set1/gandalf/Card1_075.java | 2 +- .../lotro/cards/set1/gondor/Card1_090.java | 2 +- .../lotro/cards/set1/gondor/Card1_091.java | 2 +- .../lotro/cards/set1/gondor/Card1_092.java | 2 +- .../lotro/cards/set1/gondor/Card1_095.java | 2 +- .../lotro/cards/set1/gondor/Card1_098.java | 2 +- .../lotro/cards/set1/gondor/Card1_101.java | 2 +- .../lotro/cards/set1/gondor/Card1_107.java | 2 +- .../lotro/cards/set1/gondor/Card1_112.java | 2 +- .../lotro/cards/set1/isengard/Card1_160.java | 2 +- .../lotro/cards/set1/moria/Card1_166.java | 2 +- .../lotro/cards/set1/moria/Card1_180.java | 2 +- .../lotro/cards/set1/moria/Card1_182.java | 2 +- .../lotro/cards/set1/moria/Card1_190.java | 2 +- .../lotro/cards/set1/shire/Card1_285.java | 2 +- .../lotro/cards/set1/shire/Card1_292.java | 2 +- .../lotro/cards/set1/shire/Card1_299.java | 2 +- .../lotro/cards/set1/shire/Card1_313.java | 2 +- .../lotro/cards/set1/wraith/Card1_208.java | 2 +- 31 files changed, 63 insertions(+), 32 deletions(-) diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/AbstractAttachable.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/AbstractAttachable.java index 0a55daf20..c1b7b93e9 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/AbstractAttachable.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/AbstractAttachable.java @@ -5,7 +5,9 @@ import com.gempukku.lotro.common.*; 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.ModifiersQuerying; import com.gempukku.lotro.logic.timing.Action; import java.util.Collections; @@ -29,6 +31,35 @@ public abstract class AbstractAttachable extends AbstractLotroCardBlueprint { addKeyword(_possessionClass); } + public Keyword getPossessionClass() { + return _possessionClass; + } + + public boolean isExtraPossessionClass() { + return false; + } + + protected Filter getFullValidTargetFilter(String playerId, final LotroGame game, PhysicalCard self) { + return Filters.and(getValidTargetFilter(playerId, game, self), + new Filter() { + @Override + public boolean accepts(GameState gameState, ModifiersQuerying modifiersQuerying, PhysicalCard physicalCard) { + Keyword possessionClass = getPossessionClass(); + if (possessionClass != null) { + boolean extraPossessionClass = isExtraPossessionClass(); + List attachedCards = game.getGameState().getAttachedCards(physicalCard); + List matchingClassPossessions = Filters.filter(attachedCards, gameState, modifiersQuerying, Filters.type(CardType.POSSESSION), Filters.keyword(possessionClass)); + if (matchingClassPossessions.size() > 1) + return false; + if (!extraPossessionClass && matchingClassPossessions.size() == 1 && + !((AbstractAttachable) matchingClassPossessions.get(0)).isExtraPossessionClass()) + return false; + } + return true; + } + }); + } + protected abstract Filter getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self); @Override @@ -39,7 +70,7 @@ public abstract class AbstractAttachable extends AbstractLotroCardBlueprint { public boolean checkPlayRequirements(String playerId, LotroGame game, PhysicalCard self, Filter additionalAttachmentFilter, int twilightModifier) { return (self.getBlueprint().getSide() != Side.SHADOW || PlayConditions.canPayForShadowCard(game, self, twilightModifier)) && PlayConditions.checkUniqueness(game.getGameState(), game.getModifiersQuerying(), self) - && Filters.canSpot(game.getGameState(), game.getModifiersQuerying(), getValidTargetFilter(playerId, game, self), additionalAttachmentFilter); + && Filters.canSpot(game.getGameState(), game.getModifiersQuerying(), getFullValidTargetFilter(playerId, game, self), additionalAttachmentFilter); } @Override @@ -65,7 +96,7 @@ public abstract class AbstractAttachable extends AbstractLotroCardBlueprint { } public Action getPlayCardAction(String playerId, LotroGame game, PhysicalCard self, Filter additionalAttachmentFilter, int twilightModifier) { - return new AttachPermanentAction(game, self, Filters.and(getValidTargetFilter(playerId, game, self), additionalAttachmentFilter), getAttachCostModifiers(playerId, game, self)); + return new AttachPermanentAction(game, self, Filters.and(getFullValidTargetFilter(playerId, game, self), additionalAttachmentFilter), getAttachCostModifiers(playerId, game, self)); } protected List getExtraPhaseActions(String playerId, LotroGame game, PhysicalCard self) { diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/AbstractAttachableFPPossession.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/AbstractAttachableFPPossession.java index 04ab68872..4eceac2f6 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/AbstractAttachableFPPossession.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/AbstractAttachableFPPossession.java @@ -54,7 +54,7 @@ public abstract class AbstractAttachableFPPossession extends AbstractAttachable @Override public final List getPhaseActions(String playerId, LotroGame game, PhysicalCard self) { List actions = new LinkedList(super.getPhaseActions(playerId, game, self)); - appendTransferPossessionAction(actions, game, self, getValidTargetFilter(playerId, game, self)); + appendTransferPossessionAction(actions, game, self, getFullValidTargetFilter(playerId, game, self)); return actions; } } diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_008.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_008.java index 423cc256d..e680fe0f7 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_008.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_008.java @@ -25,7 +25,7 @@ public class Card1_008 extends AbstractAttachableFPPossession { @Override protected Filter getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self) { - return Filters.and(Filters.keyword(Keyword.DWARF), Filters.not(Filters.hasAttached(Filters.keyword(Keyword.ARMOR)))); + return Filters.keyword(Keyword.DWARF); } @Override diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_009.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_009.java index 230d42a3c..6fd6101c3 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_009.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_009.java @@ -38,7 +38,7 @@ public class Card1_009 extends AbstractAttachableFPPossession { @Override protected Filter getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self) { - return Filters.and(Filters.keyword(Keyword.DWARF), Filters.not(Filters.hasAttached(Filters.keyword(Keyword.HAND_WEAPON)))); + return Filters.keyword(Keyword.DWARF); } @Override diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_014.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_014.java index acb8aebc3..b3558ee6f 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_014.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_014.java @@ -38,7 +38,7 @@ public class Card1_014 extends AbstractAttachableFPPossession { @Override protected Filter getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self) { - return Filters.and(Filters.name("Gimli"), Filters.not(Filters.hasAttached(Filters.keyword(Keyword.HAND_WEAPON)))); + return Filters.name("Gimli"); } @Override diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_015.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_015.java index 72d7d1adf..feb93c7e3 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_015.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_015.java @@ -35,7 +35,7 @@ public class Card1_015 extends AbstractAttachableFPPossession { @Override protected Filter getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self) { - return Filters.and(Filters.name("Gimli"), Filters.not(Filters.hasAttached(Filters.keyword(Keyword.HELM)))); + return Filters.name("Gimli"); } @Override diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_031.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_031.java index ee955c36b..b58ea0d26 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_031.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_031.java @@ -39,7 +39,7 @@ public class Card1_031 extends AbstractAttachableFPPossession { @Override protected Filter getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self) { - return Filters.and(Filters.keyword(Keyword.ELF), Filters.not(Filters.hasAttached(Filters.keyword(Keyword.MOUNT)))); + return Filters.keyword(Keyword.ELF); } @Override diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_033.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_033.java index d0c9a13f1..474a868c8 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_033.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_033.java @@ -36,7 +36,7 @@ public class Card1_033 extends AbstractAttachableFPPossession { @Override protected Filter getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self) { - return Filters.and(Filters.name("Legolas"), Filters.not(Filters.hasAttached(Filters.keyword(Keyword.RANGED_WEAPON)))); + return Filters.name("Legolas"); } @Override diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_041.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_041.java index 9027a16dc..2fb620715 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_041.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_041.java @@ -25,7 +25,7 @@ public class Card1_041 extends AbstractAttachableFPPossession { @Override protected Filter getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self) { - return Filters.and(Filters.keyword(Keyword.ELF), Filters.not(Filters.hasAttached(Filters.keyword(Keyword.RANGED_WEAPON)))); + return Filters.keyword(Keyword.ELF); } @Override diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_042.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_042.java index 95210cffb..92c8a8349 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_042.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_042.java @@ -27,7 +27,7 @@ public class Card1_042 extends AbstractAttachableFPPossession { @Override protected Filter getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self) { - return Filters.and(Filters.type(CardType.COMPANION), Filters.not(Filters.hasAttached(Filters.keyword(Keyword.CLOAK)))); + return Filters.type(CardType.COMPANION); } @Override diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_047.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_047.java index 361109fa8..046c48ac8 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_047.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_047.java @@ -43,7 +43,7 @@ public class Card1_047 extends AbstractAttachableFPPossession { @Override protected Filter getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self) { - return Filters.and(Filters.name("Arwen"), Filters.not(Filters.hasAttached(Filters.keyword(Keyword.HAND_WEAPON)))); + return Filters.name("Arwen"); } @Override diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gandalf/Card1_074.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gandalf/Card1_074.java index d8e9ed02b..6b5e28db3 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gandalf/Card1_074.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gandalf/Card1_074.java @@ -37,7 +37,7 @@ public class Card1_074 extends AbstractAttachableFPPossession { @Override protected Filter getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self) { - return Filters.and(Filters.name("Gandalf"), Filters.not(Filters.hasAttached(Filters.keyword(Keyword.PIPE)))); + return Filters.name("Gandalf"); } @Override diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gandalf/Card1_075.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gandalf/Card1_075.java index bc9fb5322..13bdb9326 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gandalf/Card1_075.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gandalf/Card1_075.java @@ -40,7 +40,7 @@ public class Card1_075 extends AbstractAttachableFPPossession { @Override protected Filter getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self) { - return Filters.and(Filters.name("Gandalf"), Filters.not(Filters.hasAttached(Filters.keyword(Keyword.HAND_WEAPON)))); + return Filters.name("Gandalf"); } @Override diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_090.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_090.java index 597954836..6c101e55e 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_090.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_090.java @@ -39,7 +39,7 @@ public class Card1_090 extends AbstractAttachableFPPossession { @Override protected Filter getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self) { - return Filters.and(Filters.name("Aragorn"), Filters.not(Filters.hasAttached(Filters.keyword(Keyword.RANGED_WEAPON)))); + return Filters.name("Aragorn"); } @Override diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_091.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_091.java index 773bea55f..e301717fb 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_091.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_091.java @@ -35,7 +35,7 @@ public class Card1_091 extends AbstractAttachableFPPossession { @Override protected Filter getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self) { - return Filters.and(Filters.culture(Culture.GONDOR), Filters.type(CardType.COMPANION), Filters.not(Filters.hasAttached(Filters.keyword(Keyword.PIPE)))); + return Filters.and(Filters.culture(Culture.GONDOR), Filters.type(CardType.COMPANION)); } @Override diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_092.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_092.java index c603b5091..d8b0193e2 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_092.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_092.java @@ -33,7 +33,7 @@ public class Card1_092 extends AbstractAttachableFPPossession { @Override protected Filter getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self) { - return Filters.and(Filters.keyword(Keyword.MAN), Filters.not(Filters.hasAttached(Filters.keyword(Keyword.ARMOR)))); + return Filters.keyword(Keyword.MAN); } @Override diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_095.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_095.java index 5fc2f9d42..01295da69 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_095.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_095.java @@ -41,7 +41,7 @@ public class Card1_095 extends AbstractAttachableFPPossession { @Override protected Filter getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self) { - return Filters.and(Filters.name("Boromir"), Filters.not(Filters.hasAttached(Filters.keyword(Keyword.HAND_WEAPON)))); + return Filters.name("Boromir"); } @Override diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_098.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_098.java index 1e5238656..4b0df0d9b 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_098.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_098.java @@ -34,7 +34,7 @@ public class Card1_098 extends AbstractAttachableFPPossession { @Override protected Filter getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self) { - return Filters.and(Filters.name("Boromir"), Filters.not(Filters.hasAttached(Filters.keyword(Keyword.CLOAK)))); + return Filters.name("Boromir"); } @Override diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_101.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_101.java index 64c75ad3b..ddb86a527 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_101.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_101.java @@ -25,7 +25,7 @@ public class Card1_101 extends AbstractAttachableFPPossession { @Override protected Filter getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self) { - return Filters.and(Filters.keyword(Keyword.MAN), Filters.not(Filters.hasAttached(Filters.keyword(Keyword.ARMOR)))); + return Filters.keyword(Keyword.MAN); } @Override diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_107.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_107.java index 404b9ea2a..cccbfc4cf 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_107.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_107.java @@ -26,7 +26,7 @@ public class Card1_107 extends AbstractAttachableFPPossession { @Override protected Filter getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self) { - return Filters.and(Filters.keyword(Keyword.MAN), Filters.not(Filters.hasAttached(Filters.keyword(Keyword.SHIELD)))); + return Filters.keyword(Keyword.MAN); } @Override diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_112.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_112.java index e581949a7..511c3ca0c 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_112.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_112.java @@ -31,7 +31,7 @@ public class Card1_112 extends AbstractAttachableFPPossession { @Override protected Filter getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self) { - return Filters.and(Filters.name("Aragorn"), Filters.not(Filters.hasAttached(Filters.keyword(Keyword.HAND_WEAPON)))); + return Filters.name("Aragorn"); } @Override diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/isengard/Card1_160.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/isengard/Card1_160.java index 27e33e4d9..4a59846b9 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/isengard/Card1_160.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/isengard/Card1_160.java @@ -37,7 +37,7 @@ public class Card1_160 extends AbstractAttachable { @Override protected Filter getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self) { - return Filters.and(Filters.keyword(Keyword.URUK_HAI), Filters.not(Filters.hasAttached(Filters.keyword(Keyword.HAND_WEAPON)))); + return Filters.keyword(Keyword.URUK_HAI); } @Override diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/moria/Card1_166.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/moria/Card1_166.java index d9704a9e3..7498c3861 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/moria/Card1_166.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/moria/Card1_166.java @@ -33,7 +33,7 @@ public class Card1_166 extends AbstractAttachable { @Override protected Filter getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self) { - return Filters.and(Filters.name("Cave Troll of Moria"), Filters.not(Filters.hasAttached(Filters.keyword(Keyword.HAND_WEAPON)))); + return Filters.name("Cave Troll of Moria"); } @Override diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/moria/Card1_180.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/moria/Card1_180.java index 19c68ff16..df10e2ef1 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/moria/Card1_180.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/moria/Card1_180.java @@ -41,7 +41,7 @@ public class Card1_180 extends AbstractAttachable { @Override protected Filter getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self) { - return Filters.and(Filters.culture(Culture.MORIA), Filters.keyword(Keyword.ORC), Filters.not(Filters.hasAttached(Filters.keyword(Keyword.HAND_WEAPON)))); + return Filters.and(Filters.culture(Culture.MORIA), Filters.keyword(Keyword.ORC)); } @Override diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/moria/Card1_182.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/moria/Card1_182.java index 7d7c9a0e3..acc61ac2b 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/moria/Card1_182.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/moria/Card1_182.java @@ -38,7 +38,7 @@ public class Card1_182 extends AbstractAttachable { @Override protected Filter getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self) { - return Filters.and(Filters.culture(Culture.MORIA), Filters.type(CardType.MINION), Filters.not(Filters.hasAttached(Filters.keyword(Keyword.HAND_WEAPON)))); + return Filters.and(Filters.culture(Culture.MORIA), Filters.type(CardType.MINION)); } @Override diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/moria/Card1_190.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/moria/Card1_190.java index 96d3216a2..39eab2623 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/moria/Card1_190.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/moria/Card1_190.java @@ -36,7 +36,7 @@ public class Card1_190 extends AbstractAttachable { @Override protected Filter getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self) { - return Filters.and(Filters.culture(Culture.MORIA), Filters.keyword(Keyword.ORC), Filters.not(Filters.hasAttached(Filters.keyword(Keyword.HAND_WEAPON)))); + return Filters.and(Filters.culture(Culture.MORIA), Filters.keyword(Keyword.ORC)); } @Override diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_285.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_285.java index 508f8d1c3..7c3dc64ae 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_285.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_285.java @@ -40,7 +40,7 @@ public class Card1_285 extends AbstractAttachableFPPossession { @Override protected Filter getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self) { - return Filters.and(Filters.keyword(Keyword.HOBBIT), Filters.not(Filters.hasAttached(Filters.keyword(Keyword.PIPE)))); + return Filters.keyword(Keyword.HOBBIT); } @Override diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_292.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_292.java index ee5252f57..171bea5b2 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_292.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_292.java @@ -37,7 +37,7 @@ public class Card1_292 extends AbstractAttachableFPPossession { @Override protected Filter getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self) { - return Filters.and(Filters.keyword(Keyword.HOBBIT), Filters.not(Filters.hasAttached(Filters.keyword(Keyword.PIPE)))); + return Filters.keyword(Keyword.HOBBIT); } @Override diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_299.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_299.java index 1b92a2685..162070439 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_299.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_299.java @@ -26,7 +26,7 @@ public class Card1_299 extends AbstractAttachableFPPossession { @Override protected Filter getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self) { - return Filters.and(Filters.keyword(Keyword.HOBBIT), Filters.not(Filters.hasAttached(Filters.keyword(Keyword.HAND_WEAPON)))); + return Filters.keyword(Keyword.HOBBIT); } @Override diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_313.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_313.java index 757a35676..84165294d 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_313.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_313.java @@ -39,7 +39,7 @@ public class Card1_313 extends AbstractAttachableFPPossession { @Override protected Filter getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self) { - return Filters.and(Filters.name("Frodo"), Filters.not(Filters.hasAttached(Filters.keyword(Keyword.HAND_WEAPON)))); + return Filters.name("Frodo"); } @Override diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_208.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_208.java index 5ed16abb8..acc18dfe1 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_208.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_208.java @@ -39,7 +39,7 @@ public class Card1_208 extends AbstractAttachable { @Override protected Filter getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self) { - return Filters.and(Filters.keyword(Keyword.NAZGUL), Filters.not(Filters.hasAttached(Filters.keyword(Keyword.MOUNT)))); + return Filters.keyword(Keyword.NAZGUL); } @Override