static void window_title_menu_mouseup(rct_window *w, sint32 widgetIndex) { switch (widgetIndex) { case WIDX_START_NEW_GAME: window_scenarioselect_open(window_title_menu_scenarioselect_callback); break; case WIDX_CONTINUE_SAVED_GAME: game_do_command(0, 1, 0, 0, GAME_COMMAND_LOAD_OR_QUIT, 0, 0); break; case WIDX_MULTIPLAYER: window_server_list_open(); break; } }
static void window_title_menu_mouseup(rct_window *w, rct_widgetindex widgetIndex) { rct_window *windowToOpen = nullptr; switch (widgetIndex) { case WIDX_START_NEW_GAME: windowToOpen = window_find_by_class(WC_SCENARIO_SELECT); if (windowToOpen != nullptr) { window_bring_to_front(windowToOpen); } else { window_close_by_class(WC_LOADSAVE); window_close_by_class(WC_SERVER_LIST); window_scenarioselect_open(window_title_menu_scenarioselect_callback, false); } break; case WIDX_CONTINUE_SAVED_GAME: windowToOpen = window_find_by_class(WC_LOADSAVE); if (windowToOpen != nullptr) { window_bring_to_front(windowToOpen); } else { window_close_by_class(WC_SCENARIO_SELECT); window_close_by_class(WC_SERVER_LIST); game_do_command(0, 1, 0, 0, GAME_COMMAND_LOAD_OR_QUIT, 0, 0); } break; case WIDX_MULTIPLAYER: windowToOpen = window_find_by_class(WC_SERVER_LIST); if (windowToOpen != nullptr) { window_bring_to_front(windowToOpen); } else { window_close_by_class(WC_SCENARIO_SELECT); window_close_by_class(WC_LOADSAVE); context_open_window(WC_SERVER_LIST); } break; } }