From e8b5aef04a591a9acae05dcf9e3f00290b2bcfb1 Mon Sep 17 00:00:00 2001 From: Christian 'ketura' McCarty Date: Tue, 1 Apr 2025 22:09:18 -0500 Subject: [PATCH] Fixed Highest Quality never being playable. --- .../cards/official/set11/set11-Gondor.hjson | 25 +++++----- .../official/set11/Card_11_060_Tests.java | 46 +++++++++++++++---- 2 files changed, 52 insertions(+), 19 deletions(-) diff --git a/gemp-lotr/gemp-lotr-cards/src/main/resources/cards/official/set11/set11-Gondor.hjson b/gemp-lotr/gemp-lotr-cards/src/main/resources/cards/official/set11/set11-Gondor.hjson index f8518354f..2cade0d0d 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/resources/cards/official/set11/set11-Gondor.hjson +++ b/gemp-lotr/gemp-lotr-cards/src/main/resources/cards/official/set11/set11-Gondor.hjson @@ -364,20 +364,23 @@ memorize: chosenCompanions } } - { - type: exert - select: memory(chosenCompanions) - ignoreCostCheckFailure: true - } ] effect: [ { - type: modifyStrength - select: choose(minion,inSkirmishAgainst(culture(gondor),companion)) - amount: { - type: forEachInMemory - memory: chosenCompanion - multiplier: -3 + type: CostToEffect + cost: { + type: exert + select: memory(chosenCompanions) + ignoreCostCheckFailure: true + } + effect: { + type: modifyStrength + select: choose(minion,inSkirmishAgainst(culture(gondor),companion)) + amount: { + type: forEachInMemory + memory: chosenCompanions + multiplier: -3 + } } } ] diff --git a/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/official/set11/Card_11_060_Tests.java b/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/official/set11/Card_11_060_Tests.java index 4c347b619..8891b8452 100644 --- a/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/official/set11/Card_11_060_Tests.java +++ b/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/cards/official/set11/Card_11_060_Tests.java @@ -21,7 +21,11 @@ public class Card_11_060_Tests new HashMap<>() {{ put("quality", "11_60"); - // put other cards in here as needed for the test case + put("man1", "14_7"); + put("man2", "14_8"); + put("man3", "14_9"); + + put("sauron", "9_48"); }}, GenericCardTestHelper.FellowshipSites, GenericCardTestHelper.FOTRFrodo, @@ -60,17 +64,43 @@ public class Card_11_060_Tests assertEquals(2, card.getBlueprint().getTwilightCost()); } - //@Test - public void TheHighestQualityTest1() throws DecisionResultInvalidException, CardNotFoundException { + @Test + public void TheHighestQualityExerts12ResWorthOfMenToDebuffAMinion() throws DecisionResultInvalidException, CardNotFoundException { //Pre-game setup var scn = GetScenario(); var quality = scn.GetFreepsCard("quality"); -// scn.FreepsMoveCardToHand(card); -// -// scn.StartGame(); -// scn.FreepsPlayCard(card); + var man1 = scn.GetFreepsCard("man1"); + var man2 = scn.GetFreepsCard("man2"); + var man3 = scn.GetFreepsCard("man3"); + scn.FreepsMoveCardToHand(quality); + scn.FreepsMoveCharToTable(man1, man2, man3); + + var sauron = scn.GetShadowCard("sauron"); + scn.ShadowMoveCharToTable(sauron); + + scn.StartGame(); + scn.RemoveBurdens(1); + + scn.SkipToAssignments(); + scn.FreepsAssignToMinions(man1, sauron); + scn.FreepsResolveSkirmish(man1); + + assertEquals(5, scn.GetResistance(man1)); + assertEquals(5, scn.GetResistance(man2)); + assertEquals(6, scn.GetResistance(man3)); + assertEquals(0, scn.GetWoundsOn(man1)); + assertEquals(0, scn.GetWoundsOn(man2)); + assertEquals(0, scn.GetWoundsOn(man3)); + assertEquals(24, scn.GetStrength(sauron)); + assertTrue(scn.FreepsPlayAvailable(quality)); + + scn.FreepsPlayCard(quality); + scn.FreepsChooseCards(man1, man2, man3); + assertEquals(1, scn.GetWoundsOn(man1)); + assertEquals(1, scn.GetWoundsOn(man2)); + assertEquals(1, scn.GetWoundsOn(man3)); + assertEquals(15, scn.GetStrength(sauron)); - assertEquals(2, scn.GetTwilight()); } }