From 0acf7d520f71cea621256dca2003ed1b0add7ddd Mon Sep 17 00:00:00 2001 From: "marcin.sciesinski" Date: Mon, 2 Sep 2019 12:33:42 -0700 Subject: [PATCH] Simplified some Gandalf events --- .../main/web/cards/set40/set40-gandalf.json | 56 ++++++++----------- .../com/gempukku/lotro/at/NewCardsAtTest.java | 42 ++++++++++++++ 2 files changed, 66 insertions(+), 32 deletions(-) diff --git a/gemp-lotr/gemp-lotr-async/src/main/web/cards/set40/set40-gandalf.json b/gemp-lotr/gemp-lotr-async/src/main/web/cards/set40/set40-gandalf.json index bdcfb3f8c..a3a1f69d2 100644 --- a/gemp-lotr/gemp-lotr-async/src/main/web/cards/set40/set40-gandalf.json +++ b/gemp-lotr/gemp-lotr-async/src/main/web/cards/set40/set40-gandalf.json @@ -132,23 +132,19 @@ "effects": { "type": "event", "effect": { - "type": "choice", - "texts": [ - "Make an unbound companion strength +3", - "Make an unbound companion strength +2" - ], - "effects": [ - { - "type": "modifyStrength", - "filter": "choose(unbound,companion,not(resistanceLessThan(4)))", - "amount": 3 + "type": "modifyStrength", + "filter": "choose(unbound,companion)", + "memorize": "unboundCompanion", + "amount": { + "type": "condition", + "condition": { + "type": "memoryMatches", + "memory": "unboundCompanion", + "filter": "resistanceLessThan(4)" }, - { - "type": "modifyStrength", - "filter": "choose(unbound,companion,resistanceLessThan(4))", - "amount": 2 - } - ] + "true": 2, + "false": 3 + } } } }, @@ -192,23 +188,19 @@ "effects": { "type": "event", "effect": { - "type": "choice", - "texts": [ - "Make a minion strength -3", - "Make a minion strength -2" - ], - "effects": [ - { - "type": "modifyStrength", - "filter": "choose(minion,inSkirmishAgainst(companion,not(resistanceLessThan(5))))", - "amount": -3 + "type": "modifyStrength", + "filter": "choose(minion)", + "memorize": "chosenMinion", + "amount": { + "type": "condition", + "condition": { + "type": "memoryMatches", + "memory": "chosenMinion", + "filter": "inSkirmishAgainst(companion,not(resistanceLessThan(5)))" }, - { - "type": "modifyStrength", - "filter": "choose(minion,not(inSkirmishAgainst(companion,not(resistanceLessThan(5)))))", - "amount": -2 - } - ] + "true": -3, + "false": -2 + } } } } diff --git a/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/at/NewCardsAtTest.java b/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/at/NewCardsAtTest.java index 27dcedc05..8660d9900 100644 --- a/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/at/NewCardsAtTest.java +++ b/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/at/NewCardsAtTest.java @@ -333,4 +333,46 @@ public class NewCardsAtTest extends AbstractAtTest { assertEquals(Zone.DISCARD, blackBreath.getZone()); } + + @Test + public void strengthBonusDependingOnCharacterPlayedOn() throws DecisionResultInvalidException, CardNotFoundException { + initializeSimplestGame(); + + final PhysicalCardImpl gandalf = createCard(P1, "40_70"); + final PhysicalCardImpl bolsteredSpirits = createCard(P1, "40_67"); + PhysicalCardImpl nazgul = createCard(P2, "40_211"); + + _game.getGameState().addCardToZone(_game, gandalf, Zone.FREE_CHARACTERS); + _game.getGameState().addCardToZone(_game, bolsteredSpirits, Zone.HAND); + _game.getGameState().addCardToZone(_game, nazgul, Zone.SHADOW_CHARACTERS); + + skipMulligans(); + + // Pass in fellowship + playerDecided(P1, ""); + + // Pass in shadow + playerDecided(P2, ""); + +//Pass in maneuver + playerDecided(P1, ""); + playerDecided(P2, ""); + +//Pass in archery + playerDecided(P1, ""); + playerDecided(P2, ""); + +//Pass in assignment + playerDecided(P1, ""); + playerDecided(P2, ""); + + playerDecided(P1, gandalf.getCardId() + " " + nazgul.getCardId()); + playerDecided(P1, "" + gandalf.getCardId()); + + playerDecided(P1, "0"); + playerDecided(P1, ""); + + assertEquals(7 + 3, _game.getModifiersQuerying().getStrength(_game, gandalf)); + } + }