diff --git a/gemp-lotr/gemp-lotr-async/src/main/web/includes/changeLog.html b/gemp-lotr/gemp-lotr-async/src/main/web/includes/changeLog.html index 41610ff02..ad64acc78 100644 --- a/gemp-lotr/gemp-lotr-async/src/main/web/includes/changeLog.html +++ b/gemp-lotr/gemp-lotr-async/src/main/web/includes/changeLog.html @@ -1,6 +1,7 @@
8 Apr. 2013
- Effects that remove card game text, should no longer cancel printed strength/vitality bonuses.
+- "Madril, Defender of Osgiliath" only applies its site number modifier to minions active at the time.
5 Apr. 2013
- "Deft In Their Movements" now applies only to sites that were in play at the time it was played.
diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/gondor/Card15_064.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/gondor/Card15_064.java
index b2490ec29..b86487438 100644
--- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/gondor/Card15_064.java
+++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set15/gondor/Card15_064.java
@@ -50,7 +50,7 @@ public class Card15_064 extends AbstractCompanion {
if (threats > 0)
action.appendEffect(
new AddUntilStartOfPhaseModifierEffect(
- new MinionSiteNumberModifier(self, CardType.MINION, null, threats), Phase.REGROUP));
+ new MinionSiteNumberModifier(self, Filters.in(Filters.filterActive(game.getGameState(), game.getModifiersQuerying(), CardType.MINION)), null, threats), Phase.REGROUP));
return Collections.singletonList(action);
}
return null;
diff --git a/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/at/IndividualCardAtTest.java b/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/at/IndividualCardAtTest.java
index 998beeeca..869ee6d75 100644
--- a/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/at/IndividualCardAtTest.java
+++ b/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/at/IndividualCardAtTest.java
@@ -907,4 +907,37 @@ public class IndividualCardAtTest extends AbstractAtTest {
assertEquals(0, _game.getGameState().getTwilightPool());
}
+
+ @Test
+ public void trollMonstrousFiend() throws CardNotFoundException, DecisionResultInvalidException {
+ initializeSimplestGame();
+
+ PhysicalCardImpl troll = new PhysicalCardImpl(100, "20_256", P2, _library.getLotroCardBlueprint("20_256"));
+ PhysicalCardImpl runner1 = new PhysicalCardImpl(101, "20_268", P2, _library.getLotroCardBlueprint("20_268"));
+ PhysicalCardImpl runner2 = new PhysicalCardImpl(102, "20_268", P2, _library.getLotroCardBlueprint("20_268"));
+ PhysicalCardImpl runner3 = new PhysicalCardImpl(103, "20_268", P2, _library.getLotroCardBlueprint("20_268"));
+ PhysicalCardImpl runner4 = new PhysicalCardImpl(104, "20_268", P2, _library.getLotroCardBlueprint("20_268"));
+
+ skipMulligans();
+
+ _game.getGameState().addCardToZone(_game, troll, Zone.HAND);
+ _game.getGameState().addCardToZone(_game, runner1, Zone.HAND);
+ _game.getGameState().addCardToZone(_game, runner2, Zone.HAND);
+ _game.getGameState().addCardToZone(_game, runner3, Zone.HAND);
+ _game.getGameState().addCardToZone(_game, runner4, Zone.HAND);
+
+ _game.getGameState().addTwilight(7);
+
+ // End fellowship
+ playerDecided(P1, "");
+
+ assertEquals(9, _game.getGameState().getTwilightPool());
+
+ final AwaitingDecision playShadowAction = _userFeedback.getAwaitingDecision(P2);
+ assertEquals(AwaitingDecisionType.CARD_ACTION_CHOICE, playShadowAction.getDecisionType());
+ playerDecided(P2, getCardActionId(playShadowAction, "Play Cave"));
+
+ final AwaitingDecision discardGoblins = _userFeedback.getAwaitingDecision(P2);
+ assertEquals("3", discardGoblins.getDecisionParameters().get("min"));
+ }
}