From 13106dba0862d70a330362be10dadd4317c5c734 Mon Sep 17 00:00:00 2001 From: Gymnasiast Date: Wed, 24 Jun 2015 13:22:10 +0200 Subject: [PATCH] Only allow changing the option for select-by-ride-type in the title screen, to prevent strange behaviour --- data/language/english_uk.txt | 1 + src/windows/options.c | 6 +++++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/data/language/english_uk.txt b/data/language/english_uk.txt index fa2d6ccb63..4c6e9b01a0 100644 --- a/data/language/english_uk.txt +++ b/data/language/english_uk.txt @@ -3711,3 +3711,4 @@ STR_5374 :Date {STRINGID} STR_5375 :{UP} STR_5376 :{DOWN} #Strings 5377-5440 Reserved +STR_5441 :{SMALLFONT}{BLACK}Identifies rides by track type,{NEWLINE}so vehicles can be changed{NEWLINE}afterwards, like in RCT1. Only{NEWLINE}toggleable in the title screen. diff --git a/src/windows/options.c b/src/windows/options.c index 70da76fabd..1222cfb96b 100644 --- a/src/windows/options.c +++ b/src/windows/options.c @@ -214,7 +214,7 @@ static rct_widget window_options_misc_widgets[] = { { WWT_CHECKBOX, 2, 10, 299, 69, 80, STR_SAVE_PLUGIN_DATA, STR_SAVE_PLUGIN_DATA_TIP }, { WWT_DROPDOWN, 1, 155, 299, 83, 94, STR_NONE, STR_NONE }, { WWT_DROPDOWN_BUTTON, 1, 288, 298, 84, 93, 876, STR_NONE }, - { WWT_CHECKBOX, 2, 10, 299, 99, 110, 5122, STR_NONE }, // select by track type + { WWT_CHECKBOX, 2, 10, 299, 99, 110, 5122, 5441 }, // select by track type { WWT_CHECKBOX, 2, 10, 299, 114, 125, 5155, 5156 }, // test unfinished tracks { WWT_CHECKBOX, 2, 10, 299, 129, 140, 5343, STR_NONE }, // auto staff placement { WWT_CHECKBOX, 2, 10, 299, 144, 155, 5150, STR_NONE }, // enabled debugging tools @@ -1136,6 +1136,10 @@ static void window_options_invalidate() else window_options_misc_widgets[WIDX_SAVE_PLUGIN_DATA_CHECKBOX].type = WWT_CHECKBOX; + // This option sets several flags on object load, only make it changeable in the titles to prevent strange New Ride list behaviour + if (!(RCT2_GLOBAL(RCT2_ADDRESS_SCREEN_FLAGS, uint8) & SCREEN_FLAGS_TITLE_DEMO)) + w->disabled_widgets |= (1ULL << WIDX_SELECT_BY_TRACK_TYPE); + widget_set_checkbox_value(w, WIDX_SELECT_BY_TRACK_TYPE, gConfigInterface.select_by_track_type); widget_set_checkbox_value(w, WIDX_REAL_NAME_CHECKBOX, RCT2_GLOBAL(RCT2_ADDRESS_PARK_FLAGS, uint32) & PARK_FLAGS_SHOW_REAL_GUEST_NAMES); widget_set_checkbox_value(w, WIDX_SAVE_PLUGIN_DATA_CHECKBOX, gConfigGeneral.save_plugin_data);