DrawGameValue_Time(TimeLeft);
}
+void DrawGameDoorValues_EM(int emeralds, int dynamite, int score, int time)
+{
+ DrawGameValue_Emeralds(emeralds);
+ DrawGameValue_Dynamite(dynamite);
+ DrawGameValue_Score(score);
+ DrawGameValue_Time(time);
+}
+
static void resolve_group_element(int group_element, int recursion_depth)
{
static int group_nr;
CloseDoor(DOOR_CLOSE_1);
+#if 1
+
+ if (em_main_init_game(level_nr) != 0)
+ {
+ game_status = GAME_MODE_MAIN;
+ DrawMainMenu();
+
+ return;
+ }
+
+#else
+
DrawLevel();
DrawAllPlayers();
redraw_mask |= REDRAW_FROM_BACKBUFFER;
FadeToFront();
+#endif
+
/* copy default game door content to main double buffer */
BlitBitmap(graphic_info[IMG_GLOBAL_DOOR].bitmap, drawto,
DOOR_GFX_PAGEX5, DOOR_GFX_PAGEY1, DXSIZE, DYSIZE, DX, DY);
#if defined(TARGET_X11)
+extern void DrawGameDoorValues_EM(int, int, int, int);
+
unsigned int frame; /* current frame */
unsigned int screen_x; /* current scroll position */
unsigned int screen_y;
SX + MAX_BUF_XSIZE * TILEX - x, SY + MAX_BUF_YSIZE * TILEY - y);
}
- /* draw either the main menu footer or the in-game time/gems/score values */
-
- if (em_game_status == EM_GAME_STATUS_PLAY)
+ if (em_game_status == EM_GAME_STATUS_PLAY && SCR_FIELDY < 17)
+ {
BlitBitmap(scoreBitmap, window, 0, 0, SCR_FIELDX * TILEX, SCOREY,
- SX, SY + SCR_FIELDY * TILEY - SCOREY);
+ SX, SY + SCR_FIELDY * TILEY);
+ ClearRectangle(window, SX, SY + SCR_FIELDY * TILEY + SCOREY,
+ SCR_FIELDX * TILEX, (17 - SCR_FIELDY) * TILEY - SCOREY);
+ }
XFlush(display);
xdebug("game_blitscore");
+ DrawGameDoorValues_EM(lev.required, ply1.dynamite, lev.score,
+ (lev.time + 4) / 5);
+
i = (lev.time + 4) / 5;
BlitBitmap(botBitmap, scoreBitmap,
(i % 10) * SCOREX, colours[1] * SCOREY, SCOREX, SCOREY,
- 7 * SCOREX, 0); i /= 10;
+ 7 * SCOREX, 0);
+ i /= 10;
BlitBitmap(botBitmap, scoreBitmap,
(i % 10) * SCOREX, colours[1] * SCOREY, SCOREX, SCOREY,
- 6 * SCOREX, 0); i /= 10;
+ 6 * SCOREX, 0);
+ i /= 10;
BlitBitmap(botBitmap, scoreBitmap,
(i % 10) * SCOREX, colours[1] * SCOREY, SCOREX, SCOREY,
- 5 * SCOREX, 0); i /= 10;
+ 5 * SCOREX, 0);
+ i /= 10;
BlitBitmap(botBitmap, scoreBitmap,
(i % 10) * SCOREX, colours[1] * SCOREY, SCOREX, SCOREY,
4 * SCOREX, 0);
i = lev.score;
BlitBitmap(botBitmap, scoreBitmap,
(i % 10) * SCOREX, colours[1] * SCOREY, SCOREX, SCOREY,
- 31 * SCOREX, 0); i /= 10;
+ 31 * SCOREX, 0);
+ i /= 10;
BlitBitmap(botBitmap, scoreBitmap,
(i % 10) * SCOREX, colours[1] * SCOREY, SCOREX, SCOREY,
- 30 * SCOREX, 0); i /= 10;
+ 30 * SCOREX, 0);
+ i /= 10;
BlitBitmap(botBitmap, scoreBitmap,
(i % 10) * SCOREX, colours[1] * SCOREY, SCOREX, SCOREY,
- 29 * SCOREX, 0); i /= 10;
+ 29 * SCOREX, 0);
+ i /= 10;
BlitBitmap(botBitmap, scoreBitmap,
(i % 10) * SCOREX, colours[1] * SCOREY, SCOREX, SCOREY,
28 * SCOREX, 0);