static void StartPlayingFromHallOfFame(void)
{
+ level_nr = scores.next_level_nr;
+ LoadLevel(level_nr);
+
StartGameActions(network.enabled, setup.autorecord, level.random_seed);
}
{
execSetupArtwork();
}
- else // GAME_MODE_LEVELS
+ else if (game_status == GAME_MODE_SCORES && scores.continue_playing)
+ {
+ StartPlayingFromHallOfFame();
+ }
+ else
{
SetGameStatus(GAME_MODE_MAIN);
node_cursor->cl_first = ti->cl_first;
node_cursor->cl_cursor = ti->cl_cursor;
+
*ti_ptr = node_cursor->node_group;
DrawChooseTree(ti_ptr);
return;
}
}
- else if (dx == -1 && ti->node_parent)
+ else if ((dx == -1 || button == MB_MENU_CONTINUE) && ti->node_parent)
{
- FadeSetLeaveMenu();
+ if (game_status != GAME_MODE_SCORES)
+ FadeSetLeaveMenu();
PlaySound(SND_MENU_ITEM_SELECTING);
node_cursor->cl_first = ti->cl_first;
node_cursor->cl_cursor = ti->cl_cursor;
+
*ti_ptr = node_cursor->node_group;
DrawChooseTree(ti_ptr);
}
node_cursor->cl_first = ti->cl_first;
node_cursor->cl_cursor = ti->cl_cursor;
+
*ti_ptr = node_cursor;
if (ti->type == TREE_TYPE_LEVEL_DIR)
if (score_entry_current == NULL)
score_entry_current = getFirstValidTreeInfoEntry(score_entries);
+ if (score_entries != NULL && scores.last_added >= 0)
+ setString(&score_entries->node_group->name, BACKLINK_TEXT_NEXT);
+
// ("score_entries" and "score_entry_current" may be NULL here)
}