diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/Card1_001.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/Card1_001.java index c1f6dd3f3..23a933ac6 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/Card1_001.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/Card1_001.java @@ -1,7 +1,6 @@ package com.gempukku.lotro.cards.set1; import com.gempukku.lotro.common.CardType; -import com.gempukku.lotro.common.Keyword; import com.gempukku.lotro.common.Phase; import com.gempukku.lotro.filters.Filter; import com.gempukku.lotro.filters.Filters; @@ -11,7 +10,10 @@ import com.gempukku.lotro.logic.actions.ActivateCardAction; import com.gempukku.lotro.logic.actions.RequiredTriggerAction; import com.gempukku.lotro.logic.cardtype.AbstractAttachable; import com.gempukku.lotro.logic.effects.*; -import com.gempukku.lotro.logic.modifiers.*; +import com.gempukku.lotro.logic.modifiers.Modifier; +import com.gempukku.lotro.logic.modifiers.ModifierFlag; +import com.gempukku.lotro.logic.modifiers.StrengthModifier; +import com.gempukku.lotro.logic.modifiers.VitalityModifier; import com.gempukku.lotro.logic.timing.Action; import com.gempukku.lotro.logic.timing.Effect; import com.gempukku.lotro.logic.timing.EffectResult; @@ -44,7 +46,6 @@ public class Card1_001 extends AbstractAttachable { List modifiers = new LinkedList(); modifiers.add(new StrengthModifier(self, Filters.hasAttached(self), 1)); modifiers.add(new VitalityModifier(self, Filters.hasAttached(self), 1)); - modifiers.add(new KeywordModifier(self, Filters.hasAttached(self), Keyword.RING_BOUND)); return modifiers; } diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/Card1_002.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/Card1_002.java index 6a7b482db..916be7d67 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/Card1_002.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/Card1_002.java @@ -1,7 +1,6 @@ package com.gempukku.lotro.cards.set1; import com.gempukku.lotro.common.CardType; -import com.gempukku.lotro.common.Keyword; import com.gempukku.lotro.common.Phase; import com.gempukku.lotro.filters.Filter; import com.gempukku.lotro.filters.Filters; @@ -11,7 +10,6 @@ import com.gempukku.lotro.logic.actions.ActivateCardAction; import com.gempukku.lotro.logic.actions.RequiredTriggerAction; import com.gempukku.lotro.logic.cardtype.AbstractAttachable; import com.gempukku.lotro.logic.effects.*; -import com.gempukku.lotro.logic.modifiers.KeywordModifier; import com.gempukku.lotro.logic.modifiers.Modifier; import com.gempukku.lotro.logic.modifiers.ModifierFlag; import com.gempukku.lotro.logic.modifiers.StrengthModifier; @@ -46,7 +44,6 @@ public class Card1_002 extends AbstractAttachable { public List getInPlayModifiers(LotroGame game, PhysicalCard self) { List modifiers = new LinkedList(); modifiers.add(new StrengthModifier(self, Filters.hasAttached(self), 1)); - modifiers.add(new KeywordModifier(self, Filters.hasAttached(self), Keyword.RING_BOUND)); return modifiers; } diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set11/Card11_001.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set11/Card11_001.java index 64fe362aa..cfde161bb 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set11/Card11_001.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set11/Card11_001.java @@ -1,7 +1,6 @@ package com.gempukku.lotro.cards.set11; import com.gempukku.lotro.common.CardType; -import com.gempukku.lotro.common.Keyword; import com.gempukku.lotro.common.Phase; import com.gempukku.lotro.filters.Filter; import com.gempukku.lotro.filters.Filters; @@ -11,7 +10,6 @@ import com.gempukku.lotro.logic.actions.ActivateCardAction; import com.gempukku.lotro.logic.actions.RequiredTriggerAction; import com.gempukku.lotro.logic.cardtype.AbstractAttachable; import com.gempukku.lotro.logic.effects.*; -import com.gempukku.lotro.logic.modifiers.KeywordModifier; import com.gempukku.lotro.logic.modifiers.Modifier; import com.gempukku.lotro.logic.modifiers.ModifierFlag; import com.gempukku.lotro.logic.modifiers.ResistanceModifier; @@ -46,7 +44,6 @@ public class Card11_001 extends AbstractAttachable { public List getInPlayModifiers(LotroGame game, PhysicalCard self) { List modifiers = new LinkedList(); modifiers.add(new ResistanceModifier(self, Filters.hasAttached(self), 2)); - modifiers.add(new KeywordModifier(self, Filters.hasAttached(self), Keyword.RING_BOUND)); return modifiers; } diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/Card15_001.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/Card15_001.java index 9a25e614c..fed49557e 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/Card15_001.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/Card15_001.java @@ -39,7 +39,6 @@ public class Card15_001 extends AbstractAttachable { public List getInPlayModifiers(LotroGame game, PhysicalCard self) { List modifiers = new LinkedList(); modifiers.add(new VitalityModifier(self, Filters.hasAttached(self), 2)); - modifiers.add(new KeywordModifier(self, Filters.hasAttached(self), Keyword.RING_BOUND)); modifiers.add( new KeywordModifier(self, Filters.hasAttached(self), new Condition() { diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set19/Card19_001.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set19/Card19_001.java index 0cb03832a..2ec5d2cf6 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set19/Card19_001.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set19/Card19_001.java @@ -1,7 +1,6 @@ package com.gempukku.lotro.cards.set19; import com.gempukku.lotro.common.CardType; -import com.gempukku.lotro.common.Keyword; import com.gempukku.lotro.common.Phase; import com.gempukku.lotro.filters.Filter; import com.gempukku.lotro.filters.Filters; @@ -11,14 +10,11 @@ import com.gempukku.lotro.logic.actions.ActivateCardAction; import com.gempukku.lotro.logic.actions.RequiredTriggerAction; import com.gempukku.lotro.logic.cardtype.AbstractAttachable; import com.gempukku.lotro.logic.effects.*; -import com.gempukku.lotro.logic.modifiers.KeywordModifier; -import com.gempukku.lotro.logic.modifiers.Modifier; import com.gempukku.lotro.logic.modifiers.ModifierFlag; import com.gempukku.lotro.logic.modifiers.StrengthModifier; import com.gempukku.lotro.logic.timing.*; import java.util.Collections; -import java.util.LinkedList; import java.util.List; /** @@ -37,13 +33,6 @@ public class Card19_001 extends AbstractAttachable { return Filters.none; } - @Override - public List getInPlayModifiers(LotroGame game, PhysicalCard self) { - List modifiers = new LinkedList(); - modifiers.add(new KeywordModifier(self, Filters.hasAttached(self), Keyword.RING_BOUND)); - return modifiers; - } - @Override protected List getExtraPhaseActions(String playerId, LotroGame game, final PhysicalCard self) { if (PlayConditions.canUseFPCardDuringPhase(game, Phase.MANEUVER, self) diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set20/Card20_001.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set20/Card20_001.java index 73418a782..bc527651b 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set20/Card20_001.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set20/Card20_001.java @@ -1,7 +1,6 @@ package com.gempukku.lotro.cards.set20; import com.gempukku.lotro.common.CardType; -import com.gempukku.lotro.common.Keyword; import com.gempukku.lotro.common.Phase; import com.gempukku.lotro.filters.Filter; import com.gempukku.lotro.filters.Filters; @@ -38,7 +37,6 @@ public class Card20_001 extends AbstractAttachable { @Override public List getInPlayModifiers(LotroGame game, PhysicalCard self) { List modifiers = new LinkedList(); - modifiers.add(new KeywordModifier(self, Filters.hasAttached(self), Keyword.RING_BOUND)); modifiers.add(new StrengthModifier(self, Filters.hasAttached(self), 1)); modifiers.add(new VitalityModifier(self, Filters.hasAttached(self), 1)); modifiers.add(new ResistanceModifier(self, Filters.hasAttached(self), 1)); diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set20/Card20_002.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set20/Card20_002.java index 13987b690..208ac1eec 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set20/Card20_002.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set20/Card20_002.java @@ -1,7 +1,6 @@ package com.gempukku.lotro.cards.set20; import com.gempukku.lotro.common.CardType; -import com.gempukku.lotro.common.Keyword; import com.gempukku.lotro.common.Phase; import com.gempukku.lotro.filters.Filter; import com.gempukku.lotro.filters.Filters; @@ -11,7 +10,6 @@ import com.gempukku.lotro.logic.actions.ActivateCardAction; import com.gempukku.lotro.logic.actions.RequiredTriggerAction; import com.gempukku.lotro.logic.cardtype.AbstractAttachable; import com.gempukku.lotro.logic.effects.*; -import com.gempukku.lotro.logic.modifiers.KeywordModifier; import com.gempukku.lotro.logic.modifiers.Modifier; import com.gempukku.lotro.logic.modifiers.ModifierFlag; import com.gempukku.lotro.logic.modifiers.StrengthModifier; @@ -46,7 +44,6 @@ public class Card20_002 extends AbstractAttachable { public List getInPlayModifiers(LotroGame game, PhysicalCard self) { List modifiers = new LinkedList(); modifiers.add(new StrengthModifier(self, Filters.hasAttached(self), 1)); - modifiers.add(new KeywordModifier(self, Filters.hasAttached(self), Keyword.RING_BOUND)); return modifiers; } diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set4/Card4_001.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set4/Card4_001.java index 0c72b20e5..af5eed367 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set4/Card4_001.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set4/Card4_001.java @@ -1,7 +1,6 @@ package com.gempukku.lotro.cards.set4; import com.gempukku.lotro.common.CardType; -import com.gempukku.lotro.common.Keyword; import com.gempukku.lotro.common.Phase; import com.gempukku.lotro.filters.Filter; import com.gempukku.lotro.filters.Filters; @@ -40,7 +39,6 @@ public class Card4_001 extends AbstractAttachable { List modifiers = new LinkedList(); modifiers.add( new VitalityModifier(self, Filters.hasAttached(self), 2)); - modifiers.add(new KeywordModifier(self, Filters.hasAttached(self), Keyword.RING_BOUND)); modifiers.add( new StrengthModifier(self, Filters.hasAttached(self), new Condition() { diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set40/Card40_001.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set40/Card40_001.java index 176e6c075..fd4494e33 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set40/Card40_001.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set40/Card40_001.java @@ -1,7 +1,6 @@ package com.gempukku.lotro.cards.set40; import com.gempukku.lotro.common.CardType; -import com.gempukku.lotro.common.Keyword; import com.gempukku.lotro.common.Phase; import com.gempukku.lotro.filters.Filter; import com.gempukku.lotro.filters.Filters; @@ -48,7 +47,6 @@ public class Card40_001 extends AbstractAttachable { modifiers.add(new StrengthModifier(self, Filters.hasAttached(self), 1)); modifiers.add(new VitalityModifier(self, Filters.hasAttached(self), 1)); modifiers.add(new ResistanceModifier(self, Filters.hasAttached(self), 1)); - modifiers.add(new KeywordModifier(self, Filters.hasAttached(self), Keyword.RING_BOUND)); return modifiers; } diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set40/Card40_002.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set40/Card40_002.java index fe73afc64..396145e1b 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set40/Card40_002.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set40/Card40_002.java @@ -1,7 +1,6 @@ package com.gempukku.lotro.cards.set40; import com.gempukku.lotro.common.CardType; -import com.gempukku.lotro.common.Keyword; import com.gempukku.lotro.common.Phase; import com.gempukku.lotro.filters.Filter; import com.gempukku.lotro.filters.Filters; @@ -11,7 +10,6 @@ import com.gempukku.lotro.logic.actions.ActivateCardAction; import com.gempukku.lotro.logic.actions.RequiredTriggerAction; import com.gempukku.lotro.logic.cardtype.AbstractAttachable; import com.gempukku.lotro.logic.effects.*; -import com.gempukku.lotro.logic.modifiers.KeywordModifier; import com.gempukku.lotro.logic.modifiers.Modifier; import com.gempukku.lotro.logic.modifiers.ModifierFlag; import com.gempukku.lotro.logic.modifiers.StrengthModifier; @@ -49,7 +47,6 @@ public class Card40_002 extends AbstractAttachable { public List getInPlayModifiers(LotroGame game, PhysicalCard self) { List modifiers = new LinkedList(); modifiers.add(new StrengthModifier(self, Filters.hasAttached(self), 1)); - modifiers.add(new KeywordModifier(self, Filters.hasAttached(self), Keyword.RING_BOUND)); return modifiers; } diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set7/Card7_002.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set7/Card7_002.java index f287ec639..d1a2633aa 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set7/Card7_002.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set7/Card7_002.java @@ -1,7 +1,6 @@ package com.gempukku.lotro.cards.set7; import com.gempukku.lotro.common.CardType; -import com.gempukku.lotro.common.Keyword; import com.gempukku.lotro.common.Phase; import com.gempukku.lotro.filters.Filter; import com.gempukku.lotro.filters.Filters; @@ -11,7 +10,6 @@ import com.gempukku.lotro.logic.actions.ActivateCardAction; import com.gempukku.lotro.logic.actions.RequiredTriggerAction; import com.gempukku.lotro.logic.cardtype.AbstractAttachable; import com.gempukku.lotro.logic.effects.*; -import com.gempukku.lotro.logic.modifiers.KeywordModifier; import com.gempukku.lotro.logic.modifiers.Modifier; import com.gempukku.lotro.logic.modifiers.ModifierFlag; import com.gempukku.lotro.logic.modifiers.StrengthModifier; @@ -43,7 +41,6 @@ public class Card7_002 extends AbstractAttachable { List modifiers = new LinkedList(); modifiers.add( new StrengthModifier(self, Filters.hasAttached(self), 2)); - modifiers.add(new KeywordModifier(self, Filters.hasAttached(self), Keyword.RING_BOUND)); return modifiers; } diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set9/Card9_001.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set9/Card9_001.java index 64e095250..721cd85e1 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set9/Card9_001.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set9/Card9_001.java @@ -1,7 +1,6 @@ package com.gempukku.lotro.cards.set9; import com.gempukku.lotro.common.CardType; -import com.gempukku.lotro.common.Keyword; import com.gempukku.lotro.common.Phase; import com.gempukku.lotro.common.PossessionClass; import com.gempukku.lotro.filters.Filter; @@ -14,7 +13,10 @@ import com.gempukku.lotro.logic.cardtype.AbstractAttachable; import com.gempukku.lotro.logic.effects.*; import com.gempukku.lotro.logic.effects.choose.ChooseAndExertCharactersEffect; import com.gempukku.lotro.logic.effects.choose.ChooseAndPlayCardFromDeckEffect; -import com.gempukku.lotro.logic.modifiers.*; +import com.gempukku.lotro.logic.modifiers.Modifier; +import com.gempukku.lotro.logic.modifiers.ModifierFlag; +import com.gempukku.lotro.logic.modifiers.StrengthModifier; +import com.gempukku.lotro.logic.modifiers.VitalityModifier; import com.gempukku.lotro.logic.timing.*; import java.util.Collections; @@ -67,7 +69,6 @@ public class Card9_001 extends AbstractAttachable { List modifiers = new LinkedList(); modifiers.add(new StrengthModifier(self, Filters.hasAttached(self), 1)); modifiers.add(new VitalityModifier(self, Filters.hasAttached(self), 1)); - modifiers.add(new KeywordModifier(self, Filters.hasAttached(self), Keyword.RING_BOUND)); return modifiers; } diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/timing/RuleSet.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/timing/RuleSet.java index b51498b3c..572e21690 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/timing/RuleSet.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/timing/RuleSet.java @@ -33,7 +33,7 @@ public class RuleSet { new KilledCardRule(_actionsEnvironment).applyRule(); - new FrodoAndSamRule(_modifiersLogic).applyRule(); + new RingRelatedRule(_modifiersLogic).applyRule(); new RingBearerRule(_modifiersLogic).applyRule(); diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/timing/rules/FrodoAndSamRule.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/timing/rules/RingRelatedRule.java similarity index 76% rename from gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/timing/rules/FrodoAndSamRule.java rename to gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/timing/rules/RingRelatedRule.java index 31dadb12e..8545729c2 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/timing/rules/FrodoAndSamRule.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/timing/rules/RingRelatedRule.java @@ -1,22 +1,24 @@ -package com.gempukku.lotro.logic.timing.rules; - -import com.gempukku.lotro.common.Keyword; -import com.gempukku.lotro.filters.Filters; -import com.gempukku.lotro.logic.modifiers.CantPlayCardsModifier; -import com.gempukku.lotro.logic.modifiers.KeywordModifier; -import com.gempukku.lotro.logic.modifiers.ModifiersLogic; - -public class FrodoAndSamRule { - private ModifiersLogic _modifiersLogic; - - public FrodoAndSamRule(ModifiersLogic modifiersLogic) { - _modifiersLogic = modifiersLogic; - } - - public void applyRule() { - _modifiersLogic.addAlwaysOnModifier( - new KeywordModifier(null, Filters.or(Filters.frodo, Filters.sam), Keyword.RING_BOUND)); - _modifiersLogic.addAlwaysOnModifier( - new CantPlayCardsModifier(null, Filters.frodo, Keyword.CAN_START_WITH_RING)); - } -} +package com.gempukku.lotro.logic.timing.rules; + +import com.gempukku.lotro.common.Keyword; +import com.gempukku.lotro.filters.Filters; +import com.gempukku.lotro.logic.modifiers.CantPlayCardsModifier; +import com.gempukku.lotro.logic.modifiers.KeywordModifier; +import com.gempukku.lotro.logic.modifiers.ModifiersLogic; + +public class RingRelatedRule { + private ModifiersLogic _modifiersLogic; + + public RingRelatedRule(ModifiersLogic modifiersLogic) { + _modifiersLogic = modifiersLogic; + } + + public void applyRule() { + _modifiersLogic.addAlwaysOnModifier( + new KeywordModifier(null, Filters.or(Filters.frodo, Filters.sam), Keyword.RING_BOUND)); + _modifiersLogic.addAlwaysOnModifier( + new CantPlayCardsModifier(null, Filters.frodo, Keyword.CAN_START_WITH_RING)); + _modifiersLogic.addAlwaysOnModifier( + new KeywordModifier(null, Filters.ringBearer, Keyword.RING_BOUND)); + } +}