void DrawHeadline()
{
- int font1_width = getFontWidth(FONT_TITLE_1);
- int font2_width = getFontWidth(FONT_TITLE_2);
- int x1 = SX + (SXSIZE - strlen(PROGRAM_TITLE_STRING) * font1_width) / 2;
- int x2 = SX + (SXSIZE - strlen(WINDOW_SUBTITLE_STRING) * font2_width) / 2;
+ int text1_width = getTextWidth(PROGRAM_TITLE_STRING, FONT_TITLE_1);
+ int text2_width = getTextWidth(WINDOW_SUBTITLE_STRING, FONT_TITLE_2);
+ int x1 = SX + (SXSIZE - text1_width) / 2;
+ int x2 = SX + (SXSIZE - text2_width) / 2;
DrawText(x1, SY + 8, PROGRAM_TITLE_STRING, FONT_TITLE_1);
DrawText(x2, SY + 46, WINDOW_SUBTITLE_STRING, FONT_TITLE_2);
{
static LevelDirTree *leveldir_last_valid = NULL;
char *name_text = (!options.network && setup.team_mode ? "Team:" : "Name:");
- int font_width = getFontWidth(FONT_MENU_1);
- int name_width = font_width * strlen("Name:");
- int level_width = font_width * strlen("Level:");
+ int name_width = getTextWidth("Name:", FONT_MENU_1);
+ int level_width = getTextWidth("Level:", FONT_MENU_1);
int i;
- printf("::: CHECK A: '%s'\n", leveldir_current->graphics_path);
-
UnmapAllGadgets();
FadeSounds();
/* needed if last screen was the setup screen and fullscreen state changed */
ToggleFullscreenIfNeeded();
- printf("::: CHECK B.1: '%s'\n", leveldir_current->graphics_path);
-
-#if 1
/* leveldir_current may be invalid (level group, parent link) */
if (!validLevelSeries(leveldir_current))
leveldir_current = getFirstValidTreeInfoEntry(leveldir_last_valid);
/* store valid level series information */
leveldir_last_valid = leveldir_current;
-#endif
-
- printf("::: CHECK B.2: '%s'\n", leveldir_current->graphics_path);
/* needed if last screen (level choice) changed graphics, sounds or music */
ReloadCustomArtwork();
- printf("::: CHECK C: '%s'\n", leveldir_current->graphics_path);
-
#ifdef TARGET_SDL
SetDrawtoField(DRAW_BACKBUFFER);
#endif
/* map gadgets for main menu screen */
MapTapeButtons();
-#if 0
- /* leveldir_current may be invalid (level group, parent link) */
- if (!validLevelSeries(leveldir_current))
- leveldir_current = getFirstValidTreeInfoEntry(leveldir_last_valid);
-
- /* store valid level series information */
- leveldir_last_valid = leveldir_current;
-#endif
-
/* level_nr may have been set to value over handicap with level editor */
if (setup.handicap && level_nr > leveldir_current->handicap_level)
level_nr = leveldir_current->handicap_level;
/* move upwards to top level directory */
while (leveldir_current->node_parent)
{
- printf("::: ---> '%s'\n", leveldir_current->graphics_path);
-
/* write a "path" into level tree for easy navigation to last level */
if (leveldir_current->node_parent->node_group->cl_first == -1)
{
}
leveldir_current = leveldir_current->node_parent;
-
- printf("::: +++> '%s'\n", leveldir_current->graphics_path);
}
-
- printf("::: ===> '%s'\n", leveldir_current->graphics_path);
}
void HandleMainMenu(int mx, int my, int dx, int dy, int button)
{
- static int choice = 0;
+ static int choice = 5;
int x = 0;
int y = choice;
SaveLevelSetup_LastSeries();
SaveLevelSetup_SeriesInfo();
- printf("::: CHECK C.1: '%s'\n", leveldir_current->graphics_path);
-
gotoTopLevelDir();
- printf("::: CHECK C.2: '%s'\n", leveldir_current->graphics_path);
-
DrawChooseLevel();
}
}
}
}
- BackToFront();
-
out:
if (game_status == GAME_MODE_MAIN)
DrawMicroLevel(MICROLEV_XPOS, MICROLEV_YPOS, FALSE);
DoAnimation();
}
+
+ BackToFront();
}
#else
PlaySound_Menu_Continue(SND_BACKGROUND_INFO);
#endif
-
- DoAnimation();
}
+ DoAnimation();
BackToFront();
}
int yoffset = (ti->type == TREE_TYPE_LEVEL_DIR ? 0 : yoffset_setup);
int last_game_status = game_status; /* save current game status */
+#if 1
+ DrawBackground(mSX, mSY, SXSIZE - 32 + menu.scrollbar_xoffset, SYSIZE);
+#else
DrawBackground(SX, SY, SXSIZE - 32, SYSIZE);
- redraw_mask |= REDRAW_FIELD;
+#endif
title_string =
(ti->type == TREE_TYPE_LEVEL_DIR ? "Level Directories" :
}
game_status = last_game_status; /* restore current game status */
+
+ redraw_mask |= REDRAW_FIELD;
}
static void drawChooseTreeInfo(int entry_pos, TreeInfo *ti)
}
}
- BackToFront();
-
+#if 0
if (game_status == GAME_MODE_LEVELS || game_status == GAME_MODE_SETUP)
DoAnimation();
+
+ BackToFront();
+#endif
}
void DrawChooseLevel()
void HandleChooseLevel(int mx, int my, int dx, int dy, int button)
{
HandleChooseTree(mx, my, dx, dy, button, &leveldir_current);
+
+ DoAnimation();
+ BackToFront();
}
void DrawHallOfFame(int highlight_position)
DrawText(mSX + dx2, sy, highscore[entry].Name, font_nr2);
DrawText(mSX + dx3, sy, int2str(highscore[entry].Score, 5), font_nr4);
}
+
+ redraw_mask |= REDRAW_FIELD;
}
void HandleHallOfFame(int mx, int my, int dx, int dy, int button)
first_entry = 0;
drawHallOfFameList(first_entry, highlight_position);
-
- return;
}
}
else if (dy > 0)
first_entry = MAX(0, MAX_SCORE_ENTRIES - NUM_MENU_ENTRIES_ON_SCREEN);
drawHallOfFameList(first_entry, highlight_position);
-
- return;
}
}
-
- if (button_released)
+ else if (button_released)
{
FadeSound(SND_BACKGROUND_SCORES);
game_status = GAME_MODE_MAIN;
DrawMainMenu();
}
- BackToFront();
-
- if (game_status == GAME_MODE_SCORES)
- {
- DoAnimation();
#if 1
+ if (game_status == GAME_MODE_SCORES)
PlaySound_Menu_Continue(SND_BACKGROUND_SCORES);
#endif
- }
+
+ DoAnimation();
+ BackToFront();
}
{ TYPE_SWITCH, &setup.editor.el_dx_boulderdash,"DX Boulderd.:" },
{ TYPE_SWITCH, &setup.editor.el_chars, "Characters:" },
{ TYPE_SWITCH, &setup.editor.el_custom, "Custom:" },
+ { TYPE_SWITCH, &setup.editor.el_custom_more, "More Custom:" },
+ { TYPE_EMPTY, NULL, "" },
+ { TYPE_SWITCH, &setup.editor.el_headlines, "Headlines:" },
{ TYPE_EMPTY, NULL, "" },
{ TYPE_LEAVE_MENU, execSetupMain, "Back" },
{ 0, NULL, NULL }
static struct TokenInfo setup_info_sound[] =
{
- { TYPE_SWITCH, &setup.sound, "Sound:", },
- { TYPE_EMPTY, NULL, "" },
{ TYPE_SWITCH, &setup.sound_simple, "Simple Sound:" },
{ TYPE_SWITCH, &setup.sound_loops, "Sound Loops:" },
{ TYPE_SWITCH, &setup.sound_music, "Game Music:" },
}
}
- BackToFront();
DoAnimation();
+ BackToFront();
/* don't eat all CPU time */
Delay(10);
int font_nr = FONT_MENU_1;
/* set some entries to "unchangeable" according to other variables */
- if ((value_ptr == &setup.sound && !audio.sound_available) ||
- (value_ptr == &setup.sound_loops && !audio.loops_available) ||
- (value_ptr == &setup.sound_music && !audio.music_available) ||
- (value_ptr == &setup.fullscreen && !video.fullscreen_available))
+ if ((value_ptr == &setup.sound_simple && !audio.sound_available) ||
+ (value_ptr == &setup.sound_loops && !audio.loops_available) ||
+ (value_ptr == &setup.sound_music && !audio.music_available) ||
+ (value_ptr == &setup.fullscreen && !video.fullscreen_available))
setup_info[i].type |= TYPE_GHOSTED;
if (setup_info[i].type & TYPE_STRING)
}
}
+#if 0
BackToFront();
if (game_status == GAME_MODE_SETUP)
DoAnimation();
+#endif
}
void DrawSetupScreen_Input()
static unsigned long delay = 0;
if (!DelayReached(&delay, GADGET_FRAME_DELAY))
+#if 1
+ return;
+#else
goto out;
+#endif
player_nr = (player_nr + (x == 10 ? -1 : +1) + MAX_PLAYERS) % MAX_PLAYERS;
}
}
+#if 0
BackToFront();
out:
if (game_status == GAME_MODE_SETUP)
DoAnimation();
+#endif
}
void CustomizeKeyboard(int player_nr)
}
}
- BackToFront();
DoAnimation();
+ BackToFront();
/* don't eat all CPU time */
Delay(10);
}
- BackToFront();
DoAnimation();
+ BackToFront();
/* don't eat all CPU time */
Delay(10);
HandleChooseTree(mx, my, dx, dy, button, &artwork.mus_current);
else
HandleSetupScreen_Generic(mx, my, dx, dy, button);
+
+ DoAnimation();
+ BackToFront();
}
void HandleGameActions()
GDI_STATE, GD_BUTTON_UNPRESSED,
GDI_DESIGN_UNPRESSED, gd_bitmap_unpressed, gd_x1, gd_y1,
GDI_DESIGN_PRESSED, gd_bitmap_pressed, gd_x2, gd_y2,
+ GDI_DIRECT_DRAW, FALSE,
GDI_EVENT_MASK, event_mask,
GDI_CALLBACK_ACTION, HandleScreenGadgets,
GDI_END);
GDI_DESIGN_UNPRESSED, gd_bitmap_unpressed, gd_x1, gd_y1,
GDI_DESIGN_PRESSED, gd_bitmap_pressed, gd_x2, gd_y2,
GDI_BORDER_SIZE, SC_BORDER_SIZE, SC_BORDER_SIZE,
+ GDI_DIRECT_DRAW, FALSE,
GDI_EVENT_MASK, event_mask,
GDI_CALLBACK_ACTION, HandleScreenGadgets,
GDI_END);