diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/cardtype/AbstractAlly.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/cardtype/AbstractAlly.java index 36f0bab5c..48b49b365 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/cardtype/AbstractAlly.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/cardtype/AbstractAlly.java @@ -1,11 +1,6 @@ package com.gempukku.lotro.logic.cardtype; import com.gempukku.lotro.common.*; -import com.gempukku.lotro.game.PhysicalCard; -import com.gempukku.lotro.game.state.LotroGame; -import com.gempukku.lotro.logic.actions.ActivateCardAction; - -import java.util.List; public class AbstractAlly extends AbstractPermanent { private SitesBlock _siteBlock; @@ -39,10 +34,6 @@ public class AbstractAlly extends AbstractPermanent { return _race; } - protected List getExtraPhaseActions(String playerId, LotroGame game, final PhysicalCard self) { - return null; - } - @Override public int[] getAllyHomeSiteNumbers() { return _siteNumbers; diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/cardtype/AbstractCompanion.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/cardtype/AbstractCompanion.java index dc79e33b7..7124ac6e1 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/cardtype/AbstractCompanion.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/cardtype/AbstractCompanion.java @@ -1,12 +1,6 @@ package com.gempukku.lotro.logic.cardtype; import com.gempukku.lotro.common.*; -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.timing.PlayConditions; - -import java.util.List; public abstract class AbstractCompanion extends AbstractPermanent { private int _strength; @@ -37,16 +31,6 @@ public abstract class AbstractCompanion extends AbstractPermanent { return _signet; } - public boolean checkPlayRequirements(String playerId, LotroGame game, PhysicalCard self, int withTwilightRemoved, int twilightModifier, boolean ignoreRoamingPenalty, boolean ignoreCheckingDeadPile) { - return super.checkPlayRequirements(playerId, game, self, withTwilightRemoved, twilightModifier, ignoreRoamingPenalty, ignoreCheckingDeadPile) - && PlayConditions.checkRuleOfNine(game, self) - && PlayConditions.checkPlayRingBearer(game, self); - } - - protected List getExtraPhaseActions(String playerId, LotroGame game, final PhysicalCard self) { - return null; - } - @Override public final int getStrength() { return _strength; diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/cardtype/AbstractLotroCardBlueprint.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/cardtype/AbstractLotroCardBlueprint.java index 82d28316b..f6794fe0d 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/cardtype/AbstractLotroCardBlueprint.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/cardtype/AbstractLotroCardBlueprint.java @@ -48,6 +48,13 @@ public abstract class AbstractLotroCardBlueprint implements LotroCardBlueprint { if (!game.getModifiersQuerying().canPayExtraCostsToPlay(game, self)) return false; + if (!PlayConditions.checkUniqueness(game, self, ignoreCheckingDeadPile)) + return false; + + if (self.getBlueprint().getCardType() == CardType.COMPANION + && !(PlayConditions.checkRuleOfNine(game, self) && PlayConditions.checkPlayRingBearer(game, self))) + return false; + twilightModifier -= game.getModifiersQuerying().getPotentialDiscount(game, self); return (getSide() != Side.SHADOW || PlayConditions.canPayForShadowCard(game, self, withTwilightRemoved, twilightModifier, ignoreRoamingPenalty)); diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/cardtype/AbstractPermanent.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/cardtype/AbstractPermanent.java index f704f375e..3cf0e0b6b 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/cardtype/AbstractPermanent.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/cardtype/AbstractPermanent.java @@ -46,12 +46,6 @@ public class AbstractPermanent extends AbstractLotroCardBlueprint { return action; } - @Override - public boolean checkPlayRequirements(String playerId, LotroGame game, PhysicalCard self, int withTwilightRemoved, int twilightModifier, boolean ignoreRoamingPenalty, boolean ignoreCheckingDeadPile) { - return super.checkPlayRequirements(playerId, game, self, withTwilightRemoved, twilightModifier, ignoreRoamingPenalty, ignoreCheckingDeadPile) - && PlayConditions.checkUniqueness(game, self, ignoreCheckingDeadPile); - } - protected List getExtraPhaseActions(String playerId, LotroGame game, PhysicalCard self) { return null; }