Merge pull request #492 from PlayersCouncil/bug/quick-fixes

Bug/quick fixes
This commit is contained in:
Christian McCarty
2025-02-09 23:23:16 -06:00
committed by GitHub
4 changed files with 88 additions and 13 deletions

View File

@@ -626,8 +626,8 @@
filter: minResistance(4) filter: minResistance(4)
} }
true: { true: {
type: forEachHasAttached type: ForEachYouCanSpot
filter: possession filter: possession, AttachedTo(memory(chosenDwarf))
multiplier: 2 multiplier: 2
} }
false: 2 false: 2

View File

@@ -72,6 +72,7 @@
strength: 7 strength: 7
vitality: 3 vitality: 3
resistance: 6 resistance: 6
signet: Gandalf
keywords: Ranger keywords: Ranger
effects: [ effects: [
{ {

View File

@@ -510,7 +510,7 @@
type: discount type: discount
discount: { discount: {
type: ifRemoveFromDiscard type: ifRemoveFromDiscard
filter: culture(gollum) filter: culture(men)
count: 4 count: 4
} }
} }

View File

@@ -20,8 +20,12 @@ public class Card_12_013_Tests
return new GenericCardTestHelper( return new GenericCardTestHelper(
new HashMap<>() new HashMap<>()
{{ {{
put("card", "12_13"); put("sharp", "12_13");
// put other cards in here as needed for the test case put("gimli", "11_8");
put("book", "3_1");
put("helm", "1_15");
put("savage", "1_151");
}}, }},
GenericCardTestHelper.FellowshipSites, GenericCardTestHelper.FellowshipSites,
GenericCardTestHelper.FOTRFrodo, GenericCardTestHelper.FOTRFrodo,
@@ -46,7 +50,7 @@ public class Card_12_013_Tests
var scn = GetScenario(); var scn = GetScenario();
var card = scn.GetFreepsCard("card"); var card = scn.GetFreepsCard("sharp");
assertEquals("Sharp Defense", card.getBlueprint().getTitle()); assertEquals("Sharp Defense", card.getBlueprint().getTitle());
assertNull(card.getBlueprint().getSubtitle()); assertNull(card.getBlueprint().getSubtitle());
@@ -58,18 +62,88 @@ public class Card_12_013_Tests
assertEquals(0, card.getBlueprint().getTwilightCost()); assertEquals(0, card.getBlueprint().getTwilightCost());
} }
// Uncomment any @Test markers below once this is ready to be used @Test
//@Test public void SharpDefenseMakesDwarfWith3ResistanceAndNoPossessionsStrengthPlus2() throws DecisionResultInvalidException, CardNotFoundException {
public void SharpDefenseTest1() throws DecisionResultInvalidException, CardNotFoundException {
//Pre-game setup //Pre-game setup
var scn = GetScenario(); var scn = GetScenario();
var card = scn.GetFreepsCard("card"); var sharp = scn.GetFreepsCard("sharp");
scn.FreepsMoveCardToHand(card); var gimli = scn.GetFreepsCard("gimli");
scn.FreepsMoveCardToHand(sharp);
scn.FreepsMoveCharToTable(gimli);
var savage = scn.GetShadowCard("savage");
scn.ShadowMoveCharToTable(savage);
scn.StartGame(); scn.StartGame();
scn.FreepsPlayCard(card);
assertEquals(0, scn.GetTwilight()); scn.AddBurdens(3);
scn.SkipToAssignments();
scn.FreepsAssignToMinions(gimli, savage);
scn.FreepsResolveSkirmish(gimli);
assertEquals(3, scn.getResistance(gimli));
assertEquals(6, scn.GetStrength(gimli));
scn.FreepsPlayCard(sharp);
//Base 6, and since the 4 resistance clause is not met, +2 flat strength
assertEquals(8, scn.GetStrength(gimli));
}
@Test
public void SharpDefenseMakesDwarfWith4ResistanceAndNoPossessionsStrengthPlus0() throws DecisionResultInvalidException, CardNotFoundException {
//Pre-game setup
var scn = GetScenario();
var sharp = scn.GetFreepsCard("sharp");
var gimli = scn.GetFreepsCard("gimli");
scn.FreepsMoveCardToHand(sharp);
scn.FreepsMoveCharToTable(gimli);
var savage = scn.GetShadowCard("savage");
scn.ShadowMoveCharToTable(savage);
scn.StartGame();
scn.AddBurdens(2);
scn.SkipToAssignments();
scn.FreepsAssignToMinions(gimli, savage);
scn.FreepsResolveSkirmish(gimli);
assertEquals(4, scn.getResistance(gimli));
assertEquals(6, scn.GetStrength(gimli));
scn.FreepsPlayCard(sharp);
//Base 6, and since the 4 resistance clause is met, +0 for all attached possessions
assertEquals(6, scn.GetStrength(gimli));
}
@Test
public void SharpDefenseMakesDwarfWith4ResistanceAndNoPossessionsStrengthPlus2ForEachPossessionBorne() throws DecisionResultInvalidException, CardNotFoundException {
//Pre-game setup
var scn = GetScenario();
var sharp = scn.GetFreepsCard("sharp");
var gimli = scn.GetFreepsCard("gimli");
scn.FreepsMoveCardToHand(sharp);
scn.FreepsMoveCharToTable(gimli);
scn.FreepsAttachCardsTo(gimli, "book", "helm");
var savage = scn.GetShadowCard("savage");
scn.ShadowMoveCharToTable(savage);
scn.StartGame();
scn.AddBurdens(2);
scn.SkipToAssignments();
scn.FreepsAssignToMinions(gimli, savage);
scn.FreepsResolveSkirmish(gimli);
assertEquals(4, scn.getResistance(gimli));
assertEquals(6, scn.GetStrength(gimli));
scn.FreepsPlayCard(sharp);
//Base 6 + 2 for book + 2 for helm
assertEquals(10, scn.GetStrength(gimli));
} }
} }