X-Git-Url: https://git.distorted.org.uk/~mdw/sgt/puzzles/blobdiff_plain/6ec3ee6705865572a35e33556abfce6870a04de6..a10bec2133f43e127c1f6da28d05acd746ae306a:/inertia.c diff --git a/inertia.c b/inertia.c index 0af3f57..d29a676 100644 --- a/inertia.c +++ b/inertia.c @@ -2135,6 +2135,16 @@ static float game_flash_length(game_state *oldstate, game_state *newstate, return 0.0F; } +static int game_is_solved(game_state *state) +{ + /* + * If the player has died, we don't list the game as solved, + * because they're more likely to undo and carry on than to give + * up and start a new game. + */ + return !state->gems; +} + static int game_timing_state(game_state *state, game_ui *ui) { return TRUE; @@ -2183,6 +2193,7 @@ const struct game thegame = { game_redraw, game_anim_length, game_flash_length, + game_is_solved, FALSE, FALSE, game_print_size, game_print, TRUE, /* wants_statusbar */ FALSE, game_timing_state,