int num_entries = numTreeInfoInGroup(ti);
int num_page_entries = MIN(num_entries, NUM_MENU_ENTRIES_ON_SCREEN);
boolean position_set_by_scrollbar = (dx == 999);
+ boolean button_action = (button == MB_MENU_LEAVE || button == MB_MENU_CHOICE);
+ boolean button_is_valid = (mx >= 0 && my >= 0);
+ boolean button_screen_clicked = (button_action && button_is_valid);
if (game_status == GAME_MODE_SCORES)
{
{
drawChooseTreeScreen_Scores_NotAvailable();
}
- else if (button == MB_MENU_LEAVE || button == MB_MENU_CHOICE)
+ else if (button_screen_clicked)
{
PlaySound(SND_MENU_ITEM_SELECTING);
static void HandleHallOfFame_SelectLevel(int step, int direction)
{
- int old_level_nr = level_nr;
+ int old_level_nr = scores.last_level_nr;
int new_level_nr = old_level_nr + step * direction;
if (new_level_nr < leveldir_current->first_level)
SetMainBackgroundImageIfDefined(IMG_BACKGROUND_SCOREINFO);
+ UnmapAllGadgets();
+
FadeOut(REDRAW_FIELD);
ClearField();