fixed always drawing pointer-style global animations above everything else
[rocksndiamonds.git] / src / game.c
index dc1e2442737dd525a7ab93e52a29617d35163fa5..d1bf2d7d0f2a334760196aab48140344b55d1ba2 100644 (file)
@@ -3870,6 +3870,8 @@ void InitGame(void)
   game.LevelSolved_CountingScore = 0;
   game.LevelSolved_CountingHealth = 0;
 
+  game.RestartGameRequested = FALSE;
+
   game.panel.active = TRUE;
 
   game.no_level_time_limit = (level.time == 0);
@@ -4549,9 +4551,7 @@ void InitGame(void)
   }
 
   game.restart_level = FALSE;
-
   game.request_active = FALSE;
-  game.request_active_or_moving = FALSE;
 
   if (level.game_engine_type == GAME_ENGINE_TYPE_MM)
     InitGameActions_MM();
@@ -15804,10 +15804,14 @@ boolean CheckRestartGame(void)
     return FALSE;
   }
 
-  // do not handle game over if request dialog is already active
+  // do not ask to play again if request dialog is already active
   if (game.request_active)
     return FALSE;
 
+  // do not ask to play again if request dialog already handled
+  if (game.RestartGameRequested)
+    return FALSE;
+
   // do not ask to play again if game was never actually played
   if (!game.GamePlayed)
     return FALSE;
@@ -15816,6 +15820,8 @@ boolean CheckRestartGame(void)
   if (!setup.ask_on_game_over)
     return FALSE;
 
+  game.RestartGameRequested = TRUE;
+
   RequestRestartGame();
 
   return TRUE;