Fixed Highest Quality never being playable.

This commit is contained in:
Christian 'ketura' McCarty
2025-04-01 22:09:18 -05:00
parent cb1d158d5a
commit e8b5aef04a
2 changed files with 52 additions and 19 deletions

View File

@@ -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
}
}
}
]

View File

@@ -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());
}
}