}
}
+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;
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,
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();
}
}
+void RequestQuitGame(boolean ask_if_really_quit)
+{
+ if (AllPlayersGone ||
+ !ask_if_really_quit ||
+ level_editor_test_game ||
+ Request("Do you really want to quit the game ?",
+ REQ_ASK | REQ_STAY_CLOSED))
+ {
+#if defined(PLATFORM_UNIX)
+ if (options.network)
+ SendToServer_StopPlaying();
+ else
+#endif
+ {
+ game_status = MAINMENU;
+ DrawMainMenu();
+ }
+ }
+ else
+ {
+ OpenDoor(DOOR_OPEN_1 | DOOR_COPY_BACK);
+ }
+}
+
+
/* ---------- new game button stuff ---------------------------------------- */
/* graphic position values for game buttons */
switch (id)
{
case GAME_CTRL_ID_STOP:
- if (AllPlayersGone)
- {
- CloseDoor(DOOR_CLOSE_1);
- game_status = MAINMENU;
- DrawMainMenu();
- break;
- }
-
- if (level_editor_test_game ||
- Request("Do you really want to quit the game ?",
- REQ_ASK | REQ_STAY_CLOSED))
- {
-#if defined(PLATFORM_UNIX)
- if (options.network)
- SendToServer_StopPlaying();
- else
-#endif
- {
- game_status = MAINMENU;
- DrawMainMenu();
- }
- }
- else
- OpenDoor(DOOR_OPEN_1 | DOOR_COPY_BACK);
+ RequestQuitGame(TRUE);
break;
case GAME_CTRL_ID_PAUSE: