From aca50f9a8372445a91cddb6fa4efa6b537f3ce02 Mon Sep 17 00:00:00 2001 From: "marcins78@gmail.com" Date: Wed, 1 Feb 2012 17:50:40 +0000 Subject: [PATCH] - Stacked cards and cards in discard affect game ONLY when their side (Shadow/FP) matches their owner's current role. --- .../lotro/cards/set15/orc/Card15_117.java | 2 +- .../gempukku/lotro/game/state/GameState.java | 22 +++++++++++++++---- .../src/main/webapp/includes/changeLog.html | 3 +++ 3 files changed, 22 insertions(+), 5 deletions(-) diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/orc/Card15_117.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/orc/Card15_117.java index 922075ab7..f0f982fad 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/orc/Card15_117.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/orc/Card15_117.java @@ -41,7 +41,7 @@ public class Card15_117 extends AbstractMinion { @Override public Modifier getAlwaysOnModifier(PhysicalCard self) { - return new KeywordModifier(self, self, null, Keyword.DAMAGE, new CountActiveEvaluator(5, null, CardType.COMPANION)); + return new KeywordModifier(self, self, null, Keyword.DAMAGE, new CountActiveEvaluator(5, (Integer) null, CardType.COMPANION)); } @Override diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/game/state/GameState.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/game/state/GameState.java index c1b32f22f..ef2d499ea 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/game/state/GameState.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/game/state/GameState.java @@ -823,19 +823,33 @@ public class GameState { } private void startAffectingStacked(LotroGame game, PhysicalCard card) { - ((PhysicalCardImpl) card).startAffectingGameStacked(game); + if (isCardAffectingGame(card)) + ((PhysicalCardImpl) card).startAffectingGameStacked(game); } private void stopAffectingStacked(PhysicalCard card) { - ((PhysicalCardImpl) card).stopAffectingGameStacked(); + if (isCardAffectingGame(card)) + ((PhysicalCardImpl) card).stopAffectingGameStacked(); } private void startAffectingInDiscard(LotroGame game, PhysicalCard card) { - ((PhysicalCardImpl) card).startAffectingGameInDiscard(game); + if (isCardAffectingGame(card)) + ((PhysicalCardImpl) card).startAffectingGameInDiscard(game); } private void stopAffectingInDiscard(PhysicalCard card) { - ((PhysicalCardImpl) card).stopAffectingGameInDiscard(); + if (isCardAffectingGame(card)) + ((PhysicalCardImpl) card).stopAffectingGameInDiscard(); + } + + private boolean isCardAffectingGame(PhysicalCard card) { + final Side side = card.getBlueprint().getSide(); + if (side == Side.SHADOW) + return !getCurrentPlayerId().equals(card.getOwner()); + else if (side == Side.FREE_PEOPLE) + return getCurrentPlayerId().equals(card.getOwner()); + else + return false; } public void setCurrentPhase(Phase phase) { diff --git a/gemp-lotr/gemp-lotr-web/src/main/webapp/includes/changeLog.html b/gemp-lotr/gemp-lotr-web/src/main/webapp/includes/changeLog.html index 5067d00fb..953b41804 100644 --- a/gemp-lotr/gemp-lotr-web/src/main/webapp/includes/changeLog.html +++ b/gemp-lotr/gemp-lotr-web/src/main/webapp/includes/changeLog.html @@ -1,4 +1,7 @@
+1 Feb. 2012
+- Stacked cards and cards in discard affect game ONLY when their side (Shadow/FP) matches their owner's current role.
+
 31 Jan. 2012
 - "Sword of Minas Morgul" now correctly discards the possession born by a character skirmishing the Nazgul.