From 80b63e6cefb0e1055bdd5f2f8238d7cc8c23f51f Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jonas=20K=C3=B6lker?= Date: Mon, 12 Oct 2015 20:07:18 +0200 Subject: [PATCH] In Undead, mark clues as errors in a few more situations. - Mark a clue as an error if too many monsters are seen, even if some squares are empty. - Mark a clue as an error if too few monsters are seen, taking into account how many more sightings are possible given the number of empty squares and how many times each of them are visited. --- undead.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/undead.c b/undead.c index fc03fe8..ad0ab79 100644 --- a/undead.c +++ b/undead.c @@ -1955,7 +1955,9 @@ int check_path_solution(game_state *state, int p) { } } - if (unfilled == 0 && count != state->common->paths[p].sightings_start) { + if (count > state->common->paths[p].sightings_start || + count + unfilled < state->common->paths[p].sightings_start) + { correct = FALSE; state->hint_errors[state->common->paths[p].grid_start] = TRUE; } @@ -1977,7 +1979,9 @@ int check_path_solution(game_state *state, int p) { } } - if (unfilled == 0 && count != state->common->paths[p].sightings_end) { + if (count > state->common->paths[p].sightings_end || + count + unfilled < state->common->paths[p].sightings_end) + { correct = FALSE; state->hint_errors[state->common->paths[p].grid_end] = TRUE; } -- 2.30.2