fixed delay for setting "game over" state for native Supaplex engine
authorHolger Schemel <info@artsoft.org>
Sat, 6 Apr 2024 16:52:55 +0000 (18:52 +0200)
committerHolger Schemel <info@artsoft.org>
Sat, 6 Apr 2024 16:52:55 +0000 (18:52 +0200)
src/game_sp/MainGameLoop.c

index 294e414361f6b0078646c8d2181bbc754f6c2588..39580a30f6ea5f81dbf22eccef16657f2850ca4c 100644 (file)
@@ -66,6 +66,10 @@ void subMainGameLoop_Main(byte action)
   // ---------------------- END OF GAME-BUSY LOOP ------------------------------
   // ---------------------------------------------------------------------------
 
+  // if the game is not won when reaching this point, then it is lost
+  if (!game_sp.level_solved)
+    game_sp.game_over = TRUE;
+
   LeadOutCounter = LeadOutCounter - 1;         // do more lead-out after quit
 
   if (LeadOutCounter != 0)                     // lead-out not ready: more
@@ -73,10 +77,6 @@ void subMainGameLoop_Main(byte action)
 
   // lead-out done: exit now
   // ---------------------- END OF GAME-BUSY LOOP (including lead-out) ---------
-
-  // if the game is not won when reaching this point, then it is lost
-  if (!game_sp.level_solved)
-    game_sp.game_over = TRUE;
 }
 
 void subCalculateScreenScrollPos(void)