diff --git a/data/language/en-GB.txt b/data/language/en-GB.txt index d3fa416662..0a77b8a605 100644 --- a/data/language/en-GB.txt +++ b/data/language/en-GB.txt @@ -1959,17 +1959,16 @@ STR_2749 :My new scenario STR_2750 :Move all items to top STR_2751 :Move all items to bottom STR_2752 :Clear grass -STR_2753 :Mowed grass +STR_2753 :Mow grass STR_2754 :Water plants STR_2755 :Fix vandalism STR_2756 :Remove litter STR_2763 :??? -STR_2765 :Large Tram +STR_2765 :Large tram STR_2766 :Win scenario -STR_2767 :Freeze weather -STR_2768 :Unfreeze weather -STR_2769 :Open Park -STR_2770 :Close Park +STR_2767 :Disable weather changes +STR_2769 :Open park +STR_2770 :Close park STR_2773 :Windowed STR_2774 :Fullscreen STR_2775 :Fullscreen (borderless window) @@ -2692,8 +2691,6 @@ STR_5365 :{BLACK}Staff speed: STR_5366 :Normal STR_5367 :Fast STR_5368 :Reset crash status -STR_5369 :Park parameters… -STR_5370 :{SMALLFONT}{BLACK}Click this button to modify park{NEWLINE}parameters like restrictions,{NEWLINE}guest generation and money. STR_5371 :Object selection STR_5372 :Invert right mouse dragging STR_5373 :Name {STRINGID} @@ -3010,8 +3007,8 @@ STR_5721 :Cloudy STR_5722 :Rain STR_5723 :Heavy Rain STR_5724 :Thunderstorm -STR_5725 :{BLACK}Force weather: -STR_5726 :{SMALLFONT}{BLACK}Sets the current weather in park +STR_5725 :{BLACK}Change weather to: +STR_5726 :{SMALLFONT}{BLACK}Sets the current weather in the park STR_5727 :Scaling quality: STR_5731 :Linear # tooltip for tab in options window @@ -3131,7 +3128,6 @@ STR_5846 :{SMALLFONT}{BLACK}Set how often OpenRCT2 automatically saves STR_5847 :{SMALLFONT}{BLACK}Select park sequence used on the title screen.{NEWLINE}Title sequences from RCT1/2 require imported scenarios to function STR_5848 :{SMALLFONT}{BLACK}Create and manage custom title sequences STR_5849 :{SMALLFONT}{BLACK}Automatically place{NEWLINE}newly hired staff members -STR_5850 : STR_5851 :{SMALLFONT}{BLACK}Sets the default inspection interval{NEWLINE}on newly built rides STR_5853 :{SMALLFONT}{BLACK}Toggle sound effects on/off STR_5854 :{SMALLFONT}{BLACK}Toggle ride music on/off @@ -3151,7 +3147,7 @@ STR_5867 :{WINDOW_COLOUR_2}Provider Name: {BLACK}{STRING} STR_5868 :{WINDOW_COLOUR_2}Provider E-mail: {BLACK}{STRING} STR_5869 :{WINDOW_COLOUR_2}Provider Website: {BLACK}{STRING} STR_5870 :{SMALLFONT}{BLACK}Show server information -STR_5871 :Plants don't age +STR_5871 :Disable plants withering STR_5872 :{SMALLFONT}{BLACK}Disable plant ageing such that they don't wilt. STR_5873 :Allow chain lifts on all track pieces STR_5874 :{SMALLFONT}{BLACK}Allows any piece of track to be made into a chain lift @@ -3588,8 +3584,8 @@ STR_6327 :Transparent background for giant screenshots STR_6328 :{SMALLFONT}{BLACK}With this option enabled, giant screenshots will have a transparent background instead of the default black colour. STR_6329 :{STRING}{STRINGID} STR_6330 :Downloading [{STRING}] from {STRING} ({COMMA16} / {COMMA16}) -STR_6331 :Create Ducks -STR_6332 :Remove Ducks +STR_6331 :Create ducks +STR_6332 :Remove ducks STR_6333 :Increase scale factor STR_6334 :Decrease scale factor STR_6335 :Tile Inspector: Insert corrupt element @@ -3651,6 +3647,8 @@ STR_6390 :OpenRCT2 needs files from the original RollerCoaster Tycoon 2 in or STR_6391 :Please select your RCT2 directory STR_6392 :Could not find {STRING} at this path. STR_6393 :Objective Selection +STR_6394 :Objective +STR_6395 :Maintenance ############# # Scenarios # diff --git a/distribution/changelog.txt b/distribution/changelog.txt index f68da34d4a..3b47989b10 100644 --- a/distribution/changelog.txt +++ b/distribution/changelog.txt @@ -6,6 +6,7 @@ - Feature: [#13096] Add Esperanto translation. - Feature: [#13164] Add 'Objective options' to Cheats menu. - Change: [#9568] Change lift sounds of Reverser Roller Coaster and Compact Inverted Coaster to better fitting ones. +- Change: [#13160] The lay-out of the Park Cheats tab has been improved. - Fix: [#1324] Last track piece map selection still visible when placing ride entrance or exit (original bug). - Fix: [#3200] Close Construction window upon selecting vehicle page. - Fix: [#4041] Garbled park option on scenario editor with custom theme. diff --git a/src/openrct2-ui/windows/Cheats.cpp b/src/openrct2-ui/windows/Cheats.cpp index 72168ebe86..c7452f42cb 100644 --- a/src/openrct2-ui/windows/Cheats.cpp +++ b/src/openrct2-ui/windows/Cheats.cpp @@ -131,27 +131,28 @@ enum WINDOW_CHEATS_WIDGET_IDX WIDX_GENERAL_GROUP = WIDX_TAB_CONTENT, WIDX_OPEN_CLOSE_PARK, WIDX_CREATE_DUCKS, - WIDX_PARK_PARAMETERS, - WIDX_REMOVE_DUCKS, WIDX_OWN_ALL_LAND, + WIDX_REMOVE_DUCKS, + WIDX_OBJECTIVE_GROUP, + WIDX_NEVERENDING_MARKETING, WIDX_FORCE_PARK_RATING, WIDX_PARK_RATING_SPINNER, WIDX_INCREASE_PARK_RATING, WIDX_DECREASE_PARK_RATING, WIDX_WIN_SCENARIO, WIDX_HAVE_FUN, - WIDX_NEVERENDING_MARKETING, WIDX_WEATHER_GROUP, - WIDX_FREEZE_WEATHER, WIDX_WEATHER, WIDX_WEATHER_DROPDOWN_BUTTON, - WIDX_STAFF_GROUP, + WIDX_FREEZE_WEATHER, + WIDX_MAINTENANCE_GROUP, + WIDX_REMOVE_LITTER, + WIDX_FIX_VANDALISM, WIDX_CLEAR_GRASS, WIDX_MOWED_GRASS, WIDX_WATER_PLANTS, - WIDX_FIX_VANDALISM, - WIDX_REMOVE_LITTER, WIDX_DISABLE_PLANT_AGING, + WIDX_STAFF_GROUP, WIDX_STAFF_SPEED, WIDX_STAFF_SPEED_DROPDOWN_BUTTON, @@ -259,30 +260,35 @@ static rct_widget window_cheats_guests_widgets[] = static rct_widget window_cheats_misc_widgets[] = { MAIN_CHEATS_WIDGETS, - MakeWidget ({ 5, 48}, {238, 169}, WWT_GROUPBOX, WindowColour::Secondary, STR_CHEAT_GENERAL_GROUP ), // General group - MakeWidget ({ 11, 69}, CHEAT_BUTTON, WWT_BUTTON, WindowColour::Secondary, STR_CHEAT_OPEN_PARK, STR_CHEAT_OPEN_PARK_TIP ), // open / close park - MakeWidget ({ 11, 90}, CHEAT_BUTTON, WWT_BUTTON, WindowColour::Secondary, STR_CREATE_DUCKS, STR_CREATE_DUCKS_TIP ), // Create ducks - MakeWidget ({127, 69}, CHEAT_BUTTON, WWT_BUTTON, WindowColour::Secondary, STR_CHEAT_PARK_PARAMETERS, STR_CHEAT_PARK_PARAMETERS_TIP ), // Park parameters - MakeWidget ({127, 90}, CHEAT_BUTTON, WWT_BUTTON, WindowColour::Secondary, STR_REMOVE_DUCKS, STR_REMOVE_DUCKS_TIP ), // Remove ducks - MakeWidget ({ 11, 111}, CHEAT_BUTTON, WWT_BUTTON, WindowColour::Secondary, STR_CHEAT_OWN_ALL_LAND, STR_CHEAT_OWN_ALL_LAND_TIP ), // Own all land - MakeWidget ({ 11, 153}, CHEAT_BUTTON, WWT_CHECKBOX, WindowColour::Secondary, STR_FORCE_PARK_RATING ), // Force park rating - MakeSpinnerWidgets({126, 155}, {111, 12}, WWT_SPINNER, WindowColour::Secondary ), // park rating (3 widgets) - MakeWidget ({ 11, 174}, CHEAT_BUTTON, WWT_BUTTON, WindowColour::Secondary, STR_CHEAT_WIN_SCENARIO ), // Win scenario - MakeWidget ({127, 174}, CHEAT_BUTTON, WWT_BUTTON, WindowColour::Secondary, STR_CHEAT_HAVE_FUN ), // Have fun! - MakeWidget ({ 11, 195}, CHEAT_CHECK, WWT_CHECKBOX, WindowColour::Secondary, STR_CHEAT_NEVERENDING_MARKETING, STR_CHEAT_NEVERENDING_MARKETING_TIP), // never ending marketing campaigns - MakeWidget ({ 5, 221}, {238, 64}, WWT_GROUPBOX, WindowColour::Secondary, STR_CHEAT_WEATHER_GROUP ), // Weather group - MakeWidget ({ 11, 237}, CHEAT_BUTTON, WWT_BUTTON, WindowColour::Secondary, STR_CHEAT_FREEZE_WEATHER, STR_CHEAT_FREEZE_WEATHER_TIP ), // Freeze weather - MakeWidget ({126, 258}, {111, 14}, WWT_DROPDOWN, WindowColour::Secondary, STR_NONE, STR_FORCE_WEATHER_TOOLTIP ), // Force weather - MakeWidget ({225, 259}, { 11, 12}, WWT_BUTTON, WindowColour::Secondary, STR_DROPDOWN_GLYPH, STR_FORCE_WEATHER_TOOLTIP ), // Force weather - MakeWidget ({ 5, 300}, {238, 132}, WWT_GROUPBOX, WindowColour::Secondary, STR_CHEAT_STAFF_GROUP ), // Staff group - MakeWidget ({ 11, 321}, CHEAT_BUTTON, WWT_BUTTON, WindowColour::Secondary, STR_CHEAT_CLEAR_GRASS ), // Clear grass - MakeWidget ({127, 321}, CHEAT_BUTTON, WWT_BUTTON, WindowColour::Secondary, STR_CHEAT_MOWED_GRASS ), // Mowed grass - MakeWidget ({ 11, 342}, CHEAT_BUTTON, WWT_BUTTON, WindowColour::Secondary, STR_CHEAT_WATER_PLANTS ), // Water plants - MakeWidget ({127, 342}, CHEAT_BUTTON, WWT_BUTTON, WindowColour::Secondary, STR_CHEAT_FIX_VANDALISM ), // Fix vandalism - MakeWidget ({ 11, 363}, CHEAT_BUTTON, WWT_BUTTON, WindowColour::Secondary, STR_CHEAT_REMOVE_LITTER ), // Remove litter - MakeWidget ({ 11, 384}, CHEAT_BUTTON, WWT_CHECKBOX, WindowColour::Secondary, STR_CHEAT_DISABLE_PLANT_AGING, STR_CHEAT_DISABLE_PLANT_AGING_TIP ), // Disable plant ageing - MakeWidget ({126, 405}, {111, 14}, WWT_DROPDOWN, WindowColour::Secondary ), // Staff speed - MakeWidget ({225, 406}, { 11, 12}, WWT_BUTTON, WindowColour::Secondary, STR_DROPDOWN_GLYPH ), // Staff speed + MakeWidget ({ 5, 48}, {238, 60}, WWT_GROUPBOX, WindowColour::Secondary, STR_CHEAT_GENERAL_GROUP ), // General group + MakeWidget ({ 11, 62}, CHEAT_BUTTON, WWT_BUTTON, WindowColour::Secondary, STR_CHEAT_OPEN_PARK, STR_CHEAT_OPEN_PARK_TIP ), // open / close park + MakeWidget ({ 11, 83}, CHEAT_BUTTON, WWT_BUTTON, WindowColour::Secondary, STR_CREATE_DUCKS, STR_CREATE_DUCKS_TIP ), // Create ducks + MakeWidget ({127, 62}, CHEAT_BUTTON, WWT_BUTTON, WindowColour::Secondary, STR_CHEAT_OWN_ALL_LAND, STR_CHEAT_OWN_ALL_LAND_TIP ), // Own all land + MakeWidget ({127, 83}, CHEAT_BUTTON, WWT_BUTTON, WindowColour::Secondary, STR_REMOVE_DUCKS, STR_REMOVE_DUCKS_TIP ), // Remove ducks + + MakeWidget ({ 5, 112}, {238, 75}, WWT_GROUPBOX, WindowColour::Secondary, STR_CHEAT_OBJECTIVE_GROUP ), // Objective group + MakeWidget ({ 11, 127}, CHEAT_CHECK, WWT_CHECKBOX, WindowColour::Secondary, STR_CHEAT_NEVERENDING_MARKETING, STR_CHEAT_NEVERENDING_MARKETING_TIP), // never ending marketing campaigns + MakeWidget ({ 11, 144}, {281, 12}, WWT_CHECKBOX, WindowColour::Secondary, STR_FORCE_PARK_RATING ), // Force park rating + MakeSpinnerWidgets({156, 142}, { 81, 14}, WWT_SPINNER, WindowColour::Secondary ), // park rating (3 widgets) + MakeWidget ({ 11, 162}, CHEAT_BUTTON, WWT_BUTTON, WindowColour::Secondary, STR_CHEAT_WIN_SCENARIO ), // Win scenario + MakeWidget ({127, 162}, CHEAT_BUTTON, WWT_BUTTON, WindowColour::Secondary, STR_CHEAT_HAVE_FUN ), // Have fun! + + MakeWidget ({ 5, 190}, {238, 50}, WWT_GROUPBOX, WindowColour::Secondary, STR_CHEAT_WEATHER_GROUP ), // Weather group + MakeWidget ({126, 204}, {111, 14}, WWT_DROPDOWN, WindowColour::Secondary, STR_NONE, STR_CHANGE_WEATHER_TOOLTIP ), // Force weather + MakeWidget ({225, 205}, { 11, 12}, WWT_BUTTON, WindowColour::Secondary, STR_DROPDOWN_GLYPH, STR_CHANGE_WEATHER_TOOLTIP ), // Force weather + MakeWidget ({ 11, 222}, CHEAT_CHECK, WWT_CHECKBOX, WindowColour::Secondary, STR_CHEAT_FREEZE_WEATHER, STR_CHEAT_FREEZE_WEATHER_TIP ), // Freeze weather + + MakeWidget ({ 5, 244}, {238, 99}, WWT_GROUPBOX, WindowColour::Secondary, STR_CHEAT_MAINTENANCE_GROUP ), // Maintenance group + MakeWidget ({ 11, 259}, CHEAT_BUTTON, WWT_BUTTON, WindowColour::Secondary, STR_CHEAT_REMOVE_LITTER ), // Remove litter + MakeWidget ({127, 259}, CHEAT_BUTTON, WWT_BUTTON, WindowColour::Secondary, STR_CHEAT_FIX_VANDALISM ), // Fix vandalism + MakeWidget ({ 11, 280}, CHEAT_BUTTON, WWT_BUTTON, WindowColour::Secondary, STR_CHEAT_CLEAR_GRASS ), // Clear grass + MakeWidget ({127, 280}, CHEAT_BUTTON, WWT_BUTTON, WindowColour::Secondary, STR_CHEAT_MOWED_GRASS ), // Mowed grass + MakeWidget ({ 11, 301}, CHEAT_BUTTON, WWT_BUTTON, WindowColour::Secondary, STR_CHEAT_WATER_PLANTS ), // Water plants + MakeWidget ({ 11, 322}, CHEAT_CHECK, WWT_CHECKBOX, WindowColour::Secondary, STR_CHEAT_DISABLE_PLANT_AGING, STR_CHEAT_DISABLE_PLANT_AGING_TIP ), // Disable plant ageing + + MakeWidget ({ 5, 347}, {238, 35}, WWT_GROUPBOX, WindowColour::Secondary, STR_CHEAT_STAFF_GROUP ), // Staff group + MakeWidget ({126, 361}, {111, 14}, WWT_DROPDOWN, WindowColour::Secondary ), // Staff speed + MakeWidget ({225, 362}, { 11, 12}, WWT_BUTTON, WindowColour::Secondary, STR_DROPDOWN_GLYPH ), // Staff speed { WIDGETS_END }, }; static rct_widget window_cheats_rides_widgets[] = @@ -452,7 +458,6 @@ static uint64_t window_cheats_page_enabled_widgets[] = { (1ULL << WIDX_NEVERENDING_MARKETING) | (1ULL << WIDX_STAFF_SPEED) | (1ULL << WIDX_STAFF_SPEED_DROPDOWN_BUTTON) | - (1ULL << WIDX_PARK_PARAMETERS) | (1ULL << WIDX_FORCE_PARK_RATING) | (1ULL << WIDX_INCREASE_PARK_RATING) | (1ULL << WIDX_DECREASE_PARK_RATING), @@ -862,9 +867,6 @@ static void window_cheats_misc_mouseup(rct_window* w, rct_widgetindex widgetInde case WIDX_NEVERENDING_MARKETING: CheatsSet(CheatType::NeverEndingMarketing, !gCheatsNeverendingMarketing); break; - case WIDX_PARK_PARAMETERS: - context_open_window(WC_EDITOR_SCENARIO_OPTIONS); - break; case WIDX_FORCE_PARK_RATING: if (get_forced_park_rating() >= 0) { @@ -1054,7 +1056,7 @@ static void window_cheats_invalidate(rct_window* w) w->widgets[WIDX_OPEN_CLOSE_PARK].text = (gParkFlags & PARK_FLAGS_PARK_OPEN) ? STR_CHEAT_CLOSE_PARK : STR_CHEAT_OPEN_PARK; widget_set_checkbox_value(w, WIDX_FORCE_PARK_RATING, get_forced_park_rating() >= 0); - w->widgets[WIDX_FREEZE_WEATHER].text = gCheatsFreezeWeather ? STR_CHEAT_UNFREEZE_WEATHER : STR_CHEAT_FREEZE_WEATHER; + widget_set_checkbox_value(w, WIDX_FREEZE_WEATHER, gCheatsFreezeWeather); widget_set_checkbox_value(w, WIDX_NEVERENDING_MARKETING, gCheatsNeverendingMarketing); widget_set_checkbox_value(w, WIDX_DISABLE_PLANT_AGING, gCheatsDisablePlantAging); break; @@ -1146,12 +1148,26 @@ static void window_cheats_paint(rct_window* w, rct_drawpixelinfo* dpi) } else if (w->page == WINDOW_CHEATS_PAGE_MISC) { - gfx_draw_string_left(dpi, STR_CHEAT_STAFF_SPEED, nullptr, COLOUR_BLACK, w->windowPos + ScreenCoordsXY{ X_LCOL, 408 }); - gfx_draw_string_left(dpi, STR_FORCE_WEATHER, nullptr, COLOUR_BLACK, w->windowPos + ScreenCoordsXY{ X_LCOL, 261 }); - auto ft = Formatter(); - ft.Add(_parkRatingSpinnerValue); - DrawTextBasic( - dpi, w->windowPos + ScreenCoordsXY{ X_RCOL, 156 }, STR_FORMAT_INTEGER, ft, w->colours[1], TextAlignment::RIGHT); + { + auto& widget = w->widgets[WIDX_WEATHER]; + gfx_draw_string_left( + dpi, STR_CHANGE_WEATHER, nullptr, COLOUR_BLACK, w->windowPos + ScreenCoordsXY{ X_LCOL - 3, widget.top + 1 }); + } + + { + auto ft = Formatter(); + ft.Add(_parkRatingSpinnerValue); + + auto& widget = w->widgets[WIDX_PARK_RATING_SPINNER]; + DrawTextBasic( + dpi, w->windowPos + ScreenCoordsXY{ widget.left + 1, widget.top + 2 }, STR_FORMAT_INTEGER, ft, w->colours[1]); + } + + { + auto& widget = w->widgets[WIDX_STAFF_SPEED]; + gfx_draw_string_left( + dpi, STR_CHEAT_STAFF_SPEED, nullptr, COLOUR_BLACK, w->windowPos + ScreenCoordsXY{ X_LCOL - 3, widget.top + 1 }); + } } else if (w->page == WINDOW_CHEATS_PAGE_GUESTS) { diff --git a/src/openrct2/Cheats.cpp b/src/openrct2/Cheats.cpp index b9e98e40c9..da0486838c 100644 --- a/src/openrct2/Cheats.cpp +++ b/src/openrct2/Cheats.cpp @@ -293,7 +293,7 @@ const char* CheatsGetName(CheatType cheatType) case CheatType::WinScenario: return language_get_string(STR_CHEAT_WIN_SCENARIO); case CheatType::ForceWeather: - return language_get_string(STR_FORCE_WEATHER); + return language_get_string(STR_CHANGE_WEATHER); case CheatType::FreezeWeather: return language_get_string(STR_CHEAT_FREEZE_WEATHER); case CheatType::NeverEndingMarketing: diff --git a/src/openrct2/localisation/StringIds.h b/src/openrct2/localisation/StringIds.h index 4b934f4b69..b82f63cef7 100644 --- a/src/openrct2/localisation/StringIds.h +++ b/src/openrct2/localisation/StringIds.h @@ -2078,7 +2078,7 @@ enum STR_CHEAT_LARGE_TRAM_GUESTS = 2765, STR_CHEAT_WIN_SCENARIO = 2766, STR_CHEAT_FREEZE_WEATHER = 2767, - STR_CHEAT_UNFREEZE_WEATHER = 2768, + STR_CHEAT_OPEN_PARK = 2769, STR_CHEAT_CLOSE_PARK = 2770, // STR_2771 :Slower Gamespeed @@ -2820,8 +2820,6 @@ enum STR_NORMAL = 5366, STR_FAST = 5367, STR_CHEAT_RESET_CRASH_STATUS = 5368, - STR_CHEAT_PARK_PARAMETERS = 5369, - STR_CHEAT_PARK_PARAMETERS_TIP = 5370, STR_DEBUG_DROPDOWN_OBJECT_SELECTION = 5371, STR_INVERT_RIGHT_MOUSE_DRAG = 5372, STR_NAME = 5373, @@ -3140,8 +3138,8 @@ enum STR_RAIN = STR_SUNNY + 3, STR_HEAVY_RAIN = STR_SUNNY + 4, STR_THUNDERSTORM = STR_SUNNY + 5, - STR_FORCE_WEATHER = 5725, - STR_FORCE_WEATHER_TOOLTIP = 5726, + STR_CHANGE_WEATHER = 5725, + STR_CHANGE_WEATHER_TOOLTIP = 5726, STR_SCALING_QUALITY = 5727, STR_SCALING_QUALITY_LINEAR = 5731, STR_OPTIONS_RENDERING_TIP = 5734, @@ -3898,6 +3896,8 @@ enum STR_COULD_NOT_FIND_AT_PATH = 6392, STR_CHEATS_MENU_OBJECTIVE_OPTIONS = 6393, + STR_CHEAT_OBJECTIVE_GROUP = 6394, + STR_CHEAT_MAINTENANCE_GROUP = 6395, // Have to include resource strings (from scenarios and objects) for the time being now that language is partially working /* MAX_STR_COUNT = 32768 */ // MAX_STR_COUNT - upper limit for number of strings, not the current count strings