X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=src%2Fgame.c;h=eed459776345f33d6bc402864eb4ba6bf1a56c00;hp=5bfa71db14d69900b035c2d31a0e60df472027bd;hb=856dbde29399ce97b14ad604569e1a95ce9545fd;hpb=ce81cdf36f7241179d8aadb9f1d2e416e662868f diff --git a/src/game.c b/src/game.c index 5bfa71db..eed45977 100644 --- a/src/game.c +++ b/src/game.c @@ -14949,6 +14949,38 @@ void RequestRestartGame(char *message) } } +void CheckGameOver(void) +{ + static boolean last_game_over = FALSE; + static int game_over_delay = 0; + int game_over_delay_value = 50; + boolean game_over = checkGameFailed(); + + /* do not handle game over if request dialog is already active */ + if (game.request_active) + return; + + if (!game_over) + { + last_game_over = FALSE; + game_over_delay = game_over_delay_value; + + return; + } + + if (game_over_delay > 0) + { + game_over_delay--; + + return; + } + + if (last_game_over != game_over) + game.restart_game_message = "Game over! Play it again?"; + + last_game_over = game_over; +} + boolean checkGameSolved(void) { /* set for all game engines if level was solved */