rnd-20020417-1-src
[rocksndiamonds.git] / src / game.c
index 6d536ec61824da1b027d525fa4620b2cc341e2d5..e2ae24362e543e5ad437c404ff88d99ddbb6e32d 100644 (file)
@@ -432,6 +432,18 @@ static void InitField(int x, int y, boolean init_game)
   }
 }
 
+void DrawGameDoorValues()
+{
+  DrawText(DX + XX_EMERALDS, DY + YY_EMERALDS,
+          int2str(local_player->gems_still_needed, 3), FS_SMALL, FC_YELLOW);
+  DrawText(DX + XX_DYNAMITE, DY + YY_DYNAMITE,
+          int2str(local_player->dynamite, 3), FS_SMALL, FC_YELLOW);
+  DrawText(DX + XX_SCORE, DY + YY_SCORE,
+          int2str(local_player->score, 5), FS_SMALL, FC_YELLOW);
+  DrawText(DX + XX_TIME, DY + YY_TIME,
+          int2str(TimeLeft, 3), FS_SMALL, FC_YELLOW);
+}
+
 void InitGame()
 {
   int i, j, x, y;
@@ -792,6 +804,9 @@ void InitGame()
               DX + XX_LEVEL - 1, DY + YY_LEVEL + 1);
   }
 
+#if 1
+  DrawGameDoorValues();
+#else
   DrawText(DX + XX_EMERALDS, DY + YY_EMERALDS,
           int2str(local_player->gems_still_needed, 3), FS_SMALL, FC_YELLOW);
   DrawText(DX + XX_DYNAMITE, DY + YY_DYNAMITE,
@@ -800,6 +815,7 @@ void InitGame()
           int2str(local_player->score, 5), FS_SMALL, FC_YELLOW);
   DrawText(DX + XX_TIME, DY + YY_TIME,
           int2str(TimeLeft, 3), FS_SMALL, FC_YELLOW);
+#endif
 
   UnmapGameButtons();
   UnmapTapeButtons();
@@ -6305,10 +6321,10 @@ void RaiseScoreElement(int element)
   }
 }
 
-void RequestQuitGame()
+void RequestQuitGame(boolean ask_if_really_quit)
 {
   if (AllPlayersGone ||
-      !setup.ask_on_escape ||
+      !ask_if_really_quit ||
       level_editor_test_game ||
       Request("Do you really want to quit the game ?",
              REQ_ASK | REQ_STAY_CLOSED))
@@ -6478,7 +6494,7 @@ static void HandleGameButtons(struct GadgetInfo *gi)
   switch (id)
   {
     case GAME_CTRL_ID_STOP:
-      RequestQuitGame();
+      RequestQuitGame(TRUE);
       break;
 
     case GAME_CTRL_ID_PAUSE: