diff --git a/backend/bang/expansions/the_valley_of_shadows/cards.py b/backend/bang/expansions/the_valley_of_shadows/cards.py index 9a9ca52..4b12e40 100644 --- a/backend/bang/expansions/the_valley_of_shadows/cards.py +++ b/backend/bang/expansions/the_valley_of_shadows/cards.py @@ -178,7 +178,7 @@ class Sventagliata( player.available_cards = [ dict(p, **{"original_target": against}) for p in player.game.get_visible_players(t) - if p["name"] != player.name and p["name"] != t.name and p["dist"] + if p["name"] != player.name and p["name"] != t.name and p["dist"] == 1 ] if len(player.available_cards) > 0: player.pending_action = PendingAction.CHOOSE diff --git a/backend/tests/valley_of_shadows_test.py b/backend/tests/valley_of_shadows_test.py index e361e53..b8d8e54 100644 --- a/backend/tests/valley_of_shadows_test.py +++ b/backend/tests/valley_of_shadows_test.py @@ -330,6 +330,12 @@ def test_sventagliata(): assert p.pending_action == PendingAction.PLAY assert len(p.hand) == 1 + # Ensure the secondary target is at a distance from the first target + assert any( + target["name"] == secondary_target and target["dist"] > 1 + for target in g.get_visible_players(p1) + ) + def test_mira(): g = started_game(['the_valley_of_shadows'])