From be635030bd984ab877386bf14fb1124699a8af1f Mon Sep 17 00:00:00 2001 From: Gymnasiast Date: Thu, 9 Jul 2015 16:34:34 +0200 Subject: [PATCH] Reorder cheats window, use actual currency, add cheats to give guests money and to set goal to have fun --- data/language/english_uk.txt | 18 ++-- src/localisation/string_ids.h | 6 ++ src/windows/cheats.c | 183 ++++++++++++++++++++-------------- 3 files changed, 126 insertions(+), 81 deletions(-) diff --git a/data/language/english_uk.txt b/data/language/english_uk.txt index af10cc361f..52f76a4c94 100644 --- a/data/language/english_uk.txt +++ b/data/language/english_uk.txt @@ -2683,7 +2683,7 @@ STR_2677 :??? STR_2678 :??? STR_2679 :??? STR_2680 :All research complete -STR_2681 :{MEDIUMFONT}{BLACK}Increases your money by 5,000 +STR_2681 :{MEDIUMFONT}{BLACK}Increases your money by {CURRENCY} STR_2682 : STR_2683 : STR_2684 :{SMALLFONT}{BLACK}Large group of peeps arrive @@ -2763,7 +2763,7 @@ STR_2756 :Remove litter STR_2757 :Force Sun STR_2758 :Force Thunder STR_2759 :Zero Clearance -STR_2760 :+5K Money +STR_2760 :+{CURRENCY} STR_2761 : STR_2762 : STR_2763 :??? @@ -3694,10 +3694,10 @@ STR_5357 :{BLACK}Nausea tolerance: STR_5358 :{BLACK}Bathroom: STR_5359 :Remove guests STR_5360 :{SMALLFONT}{BLACK}Removes all guests from the map -STR_5361 :{BLACK}Give all guests: -STR_5362 :{BLACK}Preferred intensity: -STR_5363 :> 1 -STR_5364 :< 15 +STR_5361 :Give all guests: +STR_5362 :{BLACK}Set all guests' preferred ride intensity to: +STR_5363 :More than 1 +STR_5364 :Less than 15 STR_5365 :{BLACK}Staff speed: STR_5366 :Normal STR_5367 :Fast @@ -3791,3 +3791,9 @@ STR_5454 :Uncap FPS STR_5458 :Rotate clockwise STR_5459 :Rotate anti-clockwise STR_5460 :Rotate view anti-clockwise +STR_5461 :Set guests' parameters +STR_5462 :{CURRENCY} +STR_5463 :Goal: Have fun! +STR_5464 :General +STR_5465 :Climate +STR_5466 :Staff diff --git a/src/localisation/string_ids.h b/src/localisation/string_ids.h index 1e475a29c1..2456acb74d 100644 --- a/src/localisation/string_ids.h +++ b/src/localisation/string_ids.h @@ -1773,6 +1773,12 @@ enum { STR_SHORTCUT_TOGGLE_VISIBILITY_OF_TOOLBARS = 5452, STR_SELECT_OTHER_RIDE = 5453, + STR_CHEAT_SET_GUESTS_PARAMETERS = 5461, + STR_CHEAT_CURRENCY_FORMAT = 5462, + STR_CHEAT_HAVE_FUN = 5463, + STR_CHEAT_GENERAL_GROUP = 5464, + STR_CHEAT_CLIMATE_GROUP = 5465, + STR_CHEAT_STAFF_GROUP = 5466, STR_SHORTCUT_ROTATE_VIEW_ANTICLOCKWISE = 5460, diff --git a/src/windows/cheats.c b/src/windows/cheats.c index 52f1a38702..350d210470 100644 --- a/src/windows/cheats.c +++ b/src/windows/cheats.c @@ -60,7 +60,8 @@ enum WINDOW_CHEATS_WIDGET_IDX { WIDX_TAB_4, WIDX_HIGH_MONEY, WIDX_CLEAR_LOAN, - WIDX_GUEST_HAPPINESS_MAX = 8, //Same as HIGH_MONEY as it is also the 8th widget but on a different page + WIDX_GUEST_PARAMETERS_GROUP = 8, //Same as HIGH_MONEY as it is also the 8th widget but on a different page + WIDX_GUEST_HAPPINESS_MAX, WIDX_GUEST_HAPPINESS_MIN, WIDX_GUEST_ENERGY_MAX, WIDX_GUEST_ENERGY_MIN, @@ -76,32 +77,38 @@ enum WINDOW_CHEATS_WIDGET_IDX { WIDX_GUEST_BATHROOM_MIN, WIDX_GUEST_RIDE_INTENSITY_MORE_THAN_1, WIDX_GUEST_RIDE_INTENSITY_LESS_THAN_15, - WIDX_TRAM_GUESTS, - WIDX_REMOVE_ALL_GUESTS, - WIDX_EXPLODE_GUESTS, + WIDX_GIVE_ALL_GUESTS_GROUP, + WIDX_GIVE_GUESTS_MONEY, WIDX_GIVE_GUESTS_PARK_MAPS, WIDX_GIVE_GUESTS_BALLOONS, WIDX_GIVE_GUESTS_UMBRELLAS, - WIDX_FREEZE_CLIMATE = 8, + WIDX_TRAM_GUESTS, + WIDX_REMOVE_ALL_GUESTS, + WIDX_EXPLODE_GUESTS, + WIDX_GENERAL_GROUP = 8, WIDX_OPEN_CLOSE_PARK, + WIDX_PARK_PARAMETERS, + WIDX_SANDBOX_MODE, WIDX_ZERO_CLEARANCE, + WIDX_UNLOCK_ALL_PRICES, + WIDX_FORCE_PARK_RATING, + WIDX_PARK_RATING_SPINNER, + WIDX_INCREASE_PARK_RATING, + WIDX_DECREASE_PARK_RATING, + WIDX_WIN_SCENARIO, + WIDX_HAVE_FUN, + WIDX_CLIMATE_GROUP, + WIDX_FREEZE_CLIMATE, WIDX_WEATHER_SUN, WIDX_WEATHER_THUNDER, + WIDX_STAFF_GROUP, WIDX_CLEAR_GRASS, WIDX_MOWED_GRASS, WIDX_WATER_PLANTS, WIDX_FIX_VANDALISM, WIDX_REMOVE_LITTER, - WIDX_WIN_SCENARIO, - WIDX_UNLOCK_ALL_PRICES, - WIDX_SANDBOX_MODE, WIDX_FAST_STAFF, WIDX_NORMAL_STAFF, - WIDX_PARK_PARAMETERS, - WIDX_FORCE_PARK_RATING, - WIDX_PARK_RATING_SPINNER, - WIDX_INCREASE_PARK_RATING, - WIDX_DECREASE_PARK_RATING, WIDX_RENEW_RIDES = 8, WIDX_REMOVE_SIX_FLAGS, WIDX_MAKE_DESTRUCTIBLE, @@ -125,6 +132,7 @@ enum { }; enum { + OBJECT_MONEY, OBJECT_PARK_MAP, OBJECT_BALLOON, OBJECT_UMBRELLA @@ -152,7 +160,7 @@ enum { #define MIN_BTN_LEFT ((sint16)(XPL(1))) #define MIN_BTN_RIGHT ((sint16)(WPL(1) / 2)) #define MAX_BTN_LEFT ((sint16)(XPL(1.5))) -#define MAX_BTN_RIGHT ((sint16)(WPL(1.5) / 2)) +#define MAX_BTN_RIGHT ((sint16)(WPL(1))) #define TXTO 3 //text horizontal offset from button left (for button text) #pragma endregion @@ -176,54 +184,63 @@ static rct_widget window_cheats_money_widgets[] = { static rct_widget window_cheats_guests_widgets[] = { MAIN_CHEATS_WIDGETS, - { WWT_CLOSEBOX, 1, MAX_BTN_LEFT, MAX_BTN_RIGHT, YPL(0), HPL(0), STR_MAX, STR_NONE }, // happiness max - { WWT_CLOSEBOX, 1, MIN_BTN_LEFT, MIN_BTN_RIGHT, YPL(0), HPL(0), STR_MIN, STR_NONE }, // happiness min - { WWT_CLOSEBOX, 1, MAX_BTN_LEFT, MAX_BTN_RIGHT, YPL(1), HPL(1), STR_MAX, STR_NONE }, // energy max - { WWT_CLOSEBOX, 1, MIN_BTN_LEFT, MIN_BTN_RIGHT, YPL(1), HPL(1), STR_MIN, STR_NONE }, // energy min - { WWT_CLOSEBOX, 1, MAX_BTN_LEFT, MAX_BTN_RIGHT, YPL(2), HPL(2), STR_MAX, STR_NONE }, // hunger max - { WWT_CLOSEBOX, 1, MIN_BTN_LEFT, MIN_BTN_RIGHT, YPL(2), HPL(2), STR_MIN, STR_NONE }, // hunger min - { WWT_CLOSEBOX, 1, MAX_BTN_LEFT, MAX_BTN_RIGHT, YPL(3), HPL(3), STR_MAX, STR_NONE }, // thirst max - { WWT_CLOSEBOX, 1, MIN_BTN_LEFT, MIN_BTN_RIGHT, YPL(3), HPL(3), STR_MIN, STR_NONE }, // thirst min - { WWT_CLOSEBOX, 1, MAX_BTN_LEFT, MAX_BTN_RIGHT, YPL(4), HPL(4), STR_MAX, STR_NONE }, // nausea max - { WWT_CLOSEBOX, 1, MIN_BTN_LEFT, MIN_BTN_RIGHT, YPL(4), HPL(4), STR_MIN, STR_NONE }, // nausea min - { WWT_CLOSEBOX, 1, MAX_BTN_LEFT, MAX_BTN_RIGHT, YPL(5), HPL(5), STR_MAX, STR_NONE }, // nausea tolerance max - { WWT_CLOSEBOX, 1, MIN_BTN_LEFT, MIN_BTN_RIGHT, YPL(5), HPL(5), STR_MIN, STR_NONE }, // nausea tolerance min - { WWT_CLOSEBOX, 1, MAX_BTN_LEFT, MAX_BTN_RIGHT, YPL(6), HPL(6), STR_MAX, STR_NONE }, // bathroom max - { WWT_CLOSEBOX, 1, MIN_BTN_LEFT, MIN_BTN_RIGHT, YPL(6), HPL(6), STR_MIN, STR_NONE }, // bathroom min - { WWT_CLOSEBOX, 1, MAX_BTN_LEFT, MAX_BTN_RIGHT, YPL(7), HPL(7), STR_CHEAT_MORE_THAN_1, STR_NONE }, // ride intensity > 1 - { WWT_CLOSEBOX, 1, MIN_BTN_LEFT, MIN_BTN_RIGHT, YPL(7), HPL(7), STR_CHEAT_LESS_THAN_15, STR_NONE }, // ride intensity < 15 - { WWT_CLOSEBOX, 1, XPL(1), WPL(1), YPL(10), HPL(10), STR_CHEAT_LARGE_TRAM_GUESTS, STR_CHEAT_TIP_LARGE_TRAM_GUESTS }, // large tram - { WWT_CLOSEBOX, 1, XPL(0), WPL(0), YPL(11), HPL(11), STR_CHEAT_REMOVE_ALL_GUESTS, STR_CHEAT_TIP_REMOVE_ALL_GUESTS }, // explode guests - { WWT_CLOSEBOX, 1, XPL(1), WPL(1), YPL(11), HPL(11), STR_CHEAT_EXPLODE, STR_CHEAT_TIP_EXPLODE }, // explode guests - { WWT_CLOSEBOX, 1, XPL(0), WPL(0), YPL(9), HPL(9), 2018, STR_NONE }, // give guests park maps - { WWT_CLOSEBOX, 1, XPL(1), WPL(1), YPL(9), HPL(9), 2016, STR_NONE }, // give guests balloons - { WWT_CLOSEBOX, 1, XPL(1), WPL(1), YPL(8), HPL(8), 2020, STR_NONE }, // give guests umbrellas + { WWT_GROUPBOX, 1, XPL(0)-3, WPL(1)+3, YPL(0), HPL(9.5), STR_CHEAT_SET_GUESTS_PARAMETERS,STR_NONE }, // Guests parameters group frame + { WWT_CLOSEBOX, 1, MAX_BTN_LEFT, MAX_BTN_RIGHT, YPL(1), HPL(1), STR_MAX, STR_NONE }, // happiness max + { WWT_CLOSEBOX, 1, MIN_BTN_LEFT, MIN_BTN_RIGHT, YPL(1), HPL(1), STR_MIN, STR_NONE }, // happiness min + { WWT_CLOSEBOX, 1, MAX_BTN_LEFT, MAX_BTN_RIGHT, YPL(2), HPL(2), STR_MAX, STR_NONE }, // energy max + { WWT_CLOSEBOX, 1, MIN_BTN_LEFT, MIN_BTN_RIGHT, YPL(2), HPL(2), STR_MIN, STR_NONE }, // energy min + { WWT_CLOSEBOX, 1, MAX_BTN_LEFT, MAX_BTN_RIGHT, YPL(3), HPL(3), STR_MAX, STR_NONE }, // hunger max + { WWT_CLOSEBOX, 1, MIN_BTN_LEFT, MIN_BTN_RIGHT, YPL(3), HPL(3), STR_MIN, STR_NONE }, // hunger min + { WWT_CLOSEBOX, 1, MAX_BTN_LEFT, MAX_BTN_RIGHT, YPL(4), HPL(4), STR_MAX, STR_NONE }, // thirst max + { WWT_CLOSEBOX, 1, MIN_BTN_LEFT, MIN_BTN_RIGHT, YPL(4), HPL(4), STR_MIN, STR_NONE }, // thirst min + { WWT_CLOSEBOX, 1, MAX_BTN_LEFT, MAX_BTN_RIGHT, YPL(5), HPL(5), STR_MAX, STR_NONE }, // nausea max + { WWT_CLOSEBOX, 1, MIN_BTN_LEFT, MIN_BTN_RIGHT, YPL(5), HPL(5), STR_MIN, STR_NONE }, // nausea min + { WWT_CLOSEBOX, 1, MAX_BTN_LEFT, MAX_BTN_RIGHT, YPL(6), HPL(6), STR_MAX, STR_NONE }, // nausea tolerance max + { WWT_CLOSEBOX, 1, MIN_BTN_LEFT, MIN_BTN_RIGHT, YPL(6), HPL(6), STR_MIN, STR_NONE }, // nausea tolerance min + { WWT_CLOSEBOX, 1, MAX_BTN_LEFT, MAX_BTN_RIGHT, YPL(7), HPL(7), STR_MAX, STR_NONE }, // bathroom max + { WWT_CLOSEBOX, 1, MIN_BTN_LEFT, MIN_BTN_RIGHT, YPL(7), HPL(7), STR_MIN, STR_NONE }, // bathroom min + { WWT_CLOSEBOX, 1, XPL(1), WPL(1), YPL(9), HPL(9), STR_CHEAT_MORE_THAN_1, STR_NONE }, // ride intensity > 1 + { WWT_CLOSEBOX, 1, XPL(0), WPL(0), YPL(9), HPL(9), STR_CHEAT_LESS_THAN_15, STR_NONE }, // ride intensity < 15 + { WWT_GROUPBOX, 1, XPL(0)-3, WPL(1)+3, YPL(11), HPL(13.5), STR_CHEAT_GIVE_ALL_GUESTS, STR_NONE }, // Guests parameters group frame + { WWT_CLOSEBOX, 1, XPL(0), WPL(0), YPL(12), HPL(12), STR_CHEAT_CURRENCY_FORMAT, STR_NONE }, // give guests money + { WWT_CLOSEBOX, 1, XPL(1), WPL(1), YPL(12), HPL(12), 2018, STR_NONE }, // give guests park maps + { WWT_CLOSEBOX, 1, XPL(0), WPL(0), YPL(13), HPL(13), 2016, STR_NONE }, // give guests balloons + { WWT_CLOSEBOX, 1, XPL(1), WPL(1), YPL(13), HPL(13), 2020, STR_NONE }, // give guests umbrellas + { WWT_CLOSEBOX, 1, XPL(0), WPL(0), YPL(15), HPL(15), STR_CHEAT_LARGE_TRAM_GUESTS, STR_CHEAT_TIP_LARGE_TRAM_GUESTS }, // large tram + { WWT_CLOSEBOX, 1, XPL(1), WPL(1), YPL(15), HPL(15), STR_CHEAT_REMOVE_ALL_GUESTS, STR_CHEAT_TIP_REMOVE_ALL_GUESTS }, // remove all guests + { WWT_CLOSEBOX, 1, XPL(0), WPL(0), YPL(16), HPL(16), STR_CHEAT_EXPLODE, STR_CHEAT_TIP_EXPLODE }, // explode guests { WIDGETS_END }, }; //Strings for following moved to window_cheats_paint() static rct_widget window_cheats_misc_widgets[] = { MAIN_CHEATS_WIDGETS, - { WWT_CLOSEBOX, 1, XPL(1), WPL(1), YPL(1), HPL(1), STR_CHEAT_FREEZE_CLIMATE, STR_NONE}, // Freeze climate - { WWT_CLOSEBOX, 1, XPL(0), WPL(0), YPL(0), HPL(0), STR_CHEAT_OPEN_PARK, STR_NONE}, // open / close park - { WWT_CLOSEBOX, 1, XPL(0), WPL(0), YPL(1), HPL(1), STR_CHEAT_ZERO_CLEARANCE, STR_NONE}, // Zero Clearance - { WWT_CLOSEBOX, 1, XPL(0), WPL(0), YPL(2), HPL(2), STR_CHEAT_FORCE_SUN, STR_NONE}, // Sun - { WWT_CLOSEBOX, 1, XPL(1), WPL(1), YPL(2), HPL(2), STR_CHEAT_FORCE_THUNDER, STR_NONE}, // Thunder - { WWT_CLOSEBOX, 1, XPL(0), WPL(0), YPL(3), HPL(3), STR_CHEAT_CLEAR_GRASS, STR_NONE}, // Clear grass - { WWT_CLOSEBOX, 1, XPL(1), WPL(1), YPL(3), HPL(3), STR_CHEAT_MOWED_GRASS, STR_NONE}, // Mowed grass - { WWT_CLOSEBOX, 1, XPL(0), WPL(0), YPL(4), HPL(4), STR_CHEAT_WATER_PLANTS, STR_NONE}, // Water plants - { WWT_CLOSEBOX, 1, XPL(1), WPL(1), YPL(4), HPL(4), STR_CHEAT_FIX_VANDALISM, STR_NONE}, // Fix vandalism - { WWT_CLOSEBOX, 1, XPL(0), WPL(0), YPL(5), HPL(5), STR_CHEAT_REMOVE_LITTER, STR_NONE}, // Remove litter - { WWT_CLOSEBOX, 1, XPL(1), WPL(1), YPL(0), HPL(0), STR_CHEAT_WIN_SCENARIO, STR_NONE}, // Win scenario - { WWT_CHECKBOX, 1, XPL(0), OWPL, YPL(11),OHPL(11), STR_CHEAT_UNLOCK_PRICES, STR_NONE}, // Unlock all prices - { WWT_CLOSEBOX, 1, XPL(1), WPL(1), YPL(5), HPL(5), STR_CHEAT_SANDBOX_MODE, STR_CHEAT_SANDBOX_MODE_TIP}, // Sandbox mode (edit land ownership in-game) - { WWT_CLOSEBOX, 1, MAX_BTN_LEFT, MAX_BTN_RIGHT, YPL(6), HPL(6), STR_FAST, STR_NONE }, // fast staff - { WWT_CLOSEBOX, 1, MIN_BTN_LEFT, MIN_BTN_RIGHT, YPL(6), HPL(6), STR_NORMAL, STR_NONE }, // normal staff - { WWT_CLOSEBOX, 1, XPL(0), WPL(0), YPL(7), HPL(7), STR_CHEAT_PARK_PARAMETERS, STR_CHEAT_TIP_PARK_PARAMETERS}, // Park parameters - { WWT_CHECKBOX, 1, XPL(0), WPL(0), YPL(8), HPL(8), STR_FORCE_PARK_RATING, STR_NONE}, // Force park rating - { WWT_SPINNER, 1, XPL(1), WPL(1) - 10, YPL(8) + 2, HPL(8) - 3, STR_NONE, STR_NONE }, // park rating - { WWT_DROPDOWN_BUTTON, 1, WPL(1) - 10, WPL(1), YPL(8) + 3, YPL(8) + 7, STR_NUMERIC_UP, STR_NONE }, // increase rating - { WWT_DROPDOWN_BUTTON, 1, WPL(1) - 10, WPL(1), YPL(8) + 8, YPL(8) + 12, STR_NUMERIC_DOWN, STR_NONE }, // decrease rating + { WWT_GROUPBOX, 1, XPL(0)-3, WPL(1)+3, YPL(0), HPL(5.5), STR_CHEAT_GENERAL_GROUP, STR_NONE }, // General group + { WWT_CLOSEBOX, 1, XPL(0), WPL(0), YPL(1), HPL(1), STR_CHEAT_OPEN_PARK, STR_NONE}, // open / close park + { WWT_CLOSEBOX, 1, XPL(1), WPL(1), YPL(1), HPL(1), STR_CHEAT_PARK_PARAMETERS, STR_CHEAT_TIP_PARK_PARAMETERS}, // Park parameters + { WWT_CLOSEBOX, 1, XPL(0), WPL(0), YPL(2), HPL(2), STR_CHEAT_SANDBOX_MODE, STR_CHEAT_SANDBOX_MODE_TIP}, // Sandbox mode (edit land ownership in-game) + { WWT_CLOSEBOX, 1, XPL(1), WPL(1), YPL(2), HPL(2), STR_CHEAT_ZERO_CLEARANCE, STR_NONE}, // Zero Clearance + { WWT_CHECKBOX, 1, XPL(0), OWPL, YPL(3), OHPL(3), STR_CHEAT_UNLOCK_PRICES, STR_NONE}, // Unlock all prices + { WWT_CHECKBOX, 1, XPL(0), WPL(0), YPL(4), HPL(4), STR_FORCE_PARK_RATING, STR_NONE}, // Force park rating + { WWT_SPINNER, 1, XPL(1), WPL(1) - 10, YPL(4) + 2, HPL(4) - 3, STR_NONE, STR_NONE }, // park rating + { WWT_DROPDOWN_BUTTON,1,WPL(1) - 10,WPL(1), YPL(4) + 3, YPL(4) + 7, STR_NUMERIC_UP, STR_NONE }, // increase rating + { WWT_DROPDOWN_BUTTON,1,WPL(1) - 10,WPL(1), YPL(4) + 8, YPL(4) + 12,STR_NUMERIC_DOWN, STR_NONE }, // decrease rating + { WWT_CLOSEBOX, 1, XPL(0), WPL(0), YPL(5), HPL(5), STR_CHEAT_WIN_SCENARIO, STR_NONE}, // Win scenario + { WWT_CLOSEBOX, 1, XPL(1), WPL(1), YPL(5), HPL(5), STR_CHEAT_HAVE_FUN, STR_NONE}, // Have fun! + { WWT_GROUPBOX, 1, XPL(0)-3, WPL(1)+3, YPL(7), HPL(9.5), STR_CHEAT_CLIMATE_GROUP, STR_NONE }, // Climate group + { WWT_CLOSEBOX, 1, XPL(0), WPL(0), YPL(8), HPL(8), STR_CHEAT_FREEZE_CLIMATE, STR_NONE}, // Freeze climate + { WWT_CLOSEBOX, 1, XPL(0), WPL(0), YPL(9), HPL(9), STR_CHEAT_FORCE_SUN, STR_NONE}, // Sun + { WWT_CLOSEBOX, 1, XPL(1), WPL(1), YPL(9), HPL(9), STR_CHEAT_FORCE_THUNDER, STR_NONE}, // Thunder + { WWT_GROUPBOX, 1, XPL(0)-3, WPL(1)+3, YPL(11), HPL(15.5), STR_CHEAT_STAFF_GROUP, STR_NONE }, // Staff group + { WWT_CLOSEBOX, 1, XPL(0), WPL(0), YPL(12), HPL(12), STR_CHEAT_CLEAR_GRASS, STR_NONE}, // Clear grass + { WWT_CLOSEBOX, 1, XPL(1), WPL(1), YPL(12), HPL(12), STR_CHEAT_MOWED_GRASS, STR_NONE}, // Mowed grass + { WWT_CLOSEBOX, 1, XPL(0), WPL(0), YPL(13), HPL(13), STR_CHEAT_WATER_PLANTS, STR_NONE}, // Water plants + { WWT_CLOSEBOX, 1, XPL(1), WPL(1), YPL(13), HPL(13), STR_CHEAT_FIX_VANDALISM, STR_NONE}, // Fix vandalism + { WWT_CLOSEBOX, 1, XPL(0), WPL(0), YPL(14), HPL(14), STR_CHEAT_REMOVE_LITTER, STR_NONE}, // Remove litter + { WWT_CLOSEBOX, 1, MAX_BTN_LEFT, MAX_BTN_RIGHT, YPL(15), HPL(15), STR_FAST, STR_NONE }, // Fast staff + { WWT_CLOSEBOX, 1, MIN_BTN_LEFT, MIN_BTN_RIGHT, YPL(15), HPL(15), STR_NORMAL, STR_NONE }, // Normal staff + + { WIDGETS_END }, }; static rct_widget window_cheats_rides_widgets[] = { @@ -391,11 +408,11 @@ static void* window_cheats_page_events[] = { window_cheats_rides_events, }; -static uint32 window_cheats_page_enabled_widgets[] = { - (1 << WIDX_CLOSE) | (1 << WIDX_TAB_1) | (1 << WIDX_TAB_2) | (1 << WIDX_TAB_3) | (1 << WIDX_TAB_4) | (1 << WIDX_HIGH_MONEY) | (1 << WIDX_CLEAR_LOAN), - (1 << WIDX_CLOSE) | (1 << WIDX_TAB_1) | (1 << WIDX_TAB_2) | (1 << WIDX_TAB_3) | (1 << WIDX_TAB_4) | (1 << WIDX_GUEST_HAPPINESS_MAX) | (1 << WIDX_GUEST_HAPPINESS_MIN) | (1 << WIDX_GUEST_ENERGY_MAX) | (1 << WIDX_GUEST_ENERGY_MIN) | (1 << WIDX_GUEST_HUNGER_MAX) | (1 << WIDX_GUEST_HUNGER_MIN) | (1 << WIDX_GUEST_THIRST_MAX) | (1 << WIDX_GUEST_THIRST_MIN) | (1 << WIDX_GUEST_NAUSEA_MAX) | (1 << WIDX_GUEST_NAUSEA_MIN) | (1 << WIDX_GUEST_NAUSEA_TOLERANCE_MAX) | (1 << WIDX_GUEST_NAUSEA_TOLERANCE_MIN) | (1 << WIDX_GUEST_BATHROOM_MAX) | (1 << WIDX_GUEST_BATHROOM_MIN) | (1 << WIDX_GUEST_RIDE_INTENSITY_MORE_THAN_1) | (1 << WIDX_GUEST_RIDE_INTENSITY_LESS_THAN_15) | (1 << WIDX_TRAM_GUESTS) | (1 << WIDX_REMOVE_ALL_GUESTS) | (1 << WIDX_EXPLODE_GUESTS) | (1 << WIDX_GIVE_GUESTS_PARK_MAPS) | (1 << WIDX_GIVE_GUESTS_BALLOONS) | (1 << WIDX_GIVE_GUESTS_UMBRELLAS), - (1 << WIDX_CLOSE) | (1 << WIDX_TAB_1) | (1 << WIDX_TAB_2) | (1 << WIDX_TAB_3) | (1 << WIDX_TAB_4) | (1 << WIDX_FREEZE_CLIMATE) | (1 << WIDX_OPEN_CLOSE_PARK) | (1 << WIDX_ZERO_CLEARANCE) | (1 << WIDX_WEATHER_SUN) | (1 << WIDX_WEATHER_THUNDER) | (1 << WIDX_CLEAR_GRASS) | (1 << WIDX_MOWED_GRASS) | (1 << WIDX_WATER_PLANTS) | (1 << WIDX_FIX_VANDALISM) | (1 << WIDX_REMOVE_LITTER) | (1 << WIDX_WIN_SCENARIO) | (1 << WIDX_UNLOCK_ALL_PRICES) | (1 << WIDX_SANDBOX_MODE) | (1 << WIDX_FAST_STAFF) | (1 << WIDX_NORMAL_STAFF) | (1 << WIDX_PARK_PARAMETERS) | (1 << WIDX_FORCE_PARK_RATING) | (1 << WIDX_INCREASE_PARK_RATING) | (1 << WIDX_DECREASE_PARK_RATING), - (1 << WIDX_CLOSE) | (1 << WIDX_TAB_1) | (1 << WIDX_TAB_2) | (1 << WIDX_TAB_3) | (1 << WIDX_TAB_4) | (1 << WIDX_RENEW_RIDES) | (1 << WIDX_REMOVE_SIX_FLAGS) | (1 << WIDX_MAKE_DESTRUCTIBLE) | (1 << WIDX_FIX_ALL) | (1 << WIDX_FAST_LIFT_HILL) | (1 << WIDX_DISABLE_BRAKES_FAILURE) | (1 << WIDX_DISABLE_ALL_BREAKDOWNS) | (1 << WIDX_BUILD_IN_PAUSE_MODE) | (1 << WIDX_RESET_CRASH_STATUS) +static uint64 window_cheats_page_enabled_widgets[] = { + (1ULL << WIDX_CLOSE) | (1ULL << WIDX_TAB_1) | (1ULL << WIDX_TAB_2) | (1ULL << WIDX_TAB_3) | (1ULL << WIDX_TAB_4) | (1ULL << WIDX_HIGH_MONEY) | (1ULL << WIDX_CLEAR_LOAN), + (1ULL << WIDX_CLOSE) | (1ULL << WIDX_TAB_1) | (1ULL << WIDX_TAB_2) | (1ULL << WIDX_TAB_3) | (1ULL << WIDX_TAB_4) | (1ULL << WIDX_GUEST_PARAMETERS_GROUP) | (1ULL << WIDX_GUEST_HAPPINESS_MAX) | (1ULL << WIDX_GUEST_HAPPINESS_MIN) | (1ULL << WIDX_GUEST_ENERGY_MAX) | (1ULL << WIDX_GUEST_ENERGY_MIN) | (1ULL << WIDX_GUEST_HUNGER_MAX) | (1ULL << WIDX_GUEST_HUNGER_MIN) | (1ULL << WIDX_GUEST_THIRST_MAX) | (1ULL << WIDX_GUEST_THIRST_MIN) | (1ULL << WIDX_GUEST_NAUSEA_MAX) | (1ULL << WIDX_GUEST_NAUSEA_MIN) | (1ULL << WIDX_GUEST_NAUSEA_TOLERANCE_MAX) | (1ULL << WIDX_GUEST_NAUSEA_TOLERANCE_MIN) | (1ULL << WIDX_GUEST_BATHROOM_MAX) | (1ULL << WIDX_GUEST_BATHROOM_MIN) | (1ULL << WIDX_GUEST_RIDE_INTENSITY_MORE_THAN_1) | (1ULL << WIDX_GUEST_RIDE_INTENSITY_LESS_THAN_15) | (1ULL << WIDX_GIVE_ALL_GUESTS_GROUP) | (1ULL << WIDX_GIVE_GUESTS_MONEY) | (1ULL << WIDX_GIVE_GUESTS_PARK_MAPS) | (1ULL << WIDX_GIVE_GUESTS_BALLOONS) | (1ULL << WIDX_GIVE_GUESTS_UMBRELLAS) | (1ULL << WIDX_TRAM_GUESTS) | (1ULL << WIDX_REMOVE_ALL_GUESTS) | (1ULL << WIDX_EXPLODE_GUESTS), + (1ULL << WIDX_CLOSE) | (1ULL << WIDX_TAB_1) | (1ULL << WIDX_TAB_2) | (1ULL << WIDX_TAB_3) | (1ULL << WIDX_TAB_4) | (1ULL << WIDX_FREEZE_CLIMATE) | (1ULL << WIDX_OPEN_CLOSE_PARK) | (1ULL << WIDX_ZERO_CLEARANCE) | (1ULL << WIDX_WEATHER_SUN) | (1ULL << WIDX_WEATHER_THUNDER) | (1ULL << WIDX_CLEAR_GRASS) | (1ULL << WIDX_MOWED_GRASS) | (1ULL << WIDX_WATER_PLANTS) | (1ULL << WIDX_FIX_VANDALISM) | (1ULL << WIDX_REMOVE_LITTER) | (1ULL << WIDX_WIN_SCENARIO) | (1ULL << WIDX_HAVE_FUN) | (1ULL << WIDX_UNLOCK_ALL_PRICES) | (1ULL << WIDX_SANDBOX_MODE) | (1ULL << WIDX_FAST_STAFF) | (1ULL << WIDX_NORMAL_STAFF) | (1ULL << WIDX_PARK_PARAMETERS) | (1ULL << WIDX_FORCE_PARK_RATING) | (1ULL << WIDX_INCREASE_PARK_RATING) | (1ULL << WIDX_DECREASE_PARK_RATING), + (1ULL << WIDX_CLOSE) | (1ULL << WIDX_TAB_1) | (1ULL << WIDX_TAB_2) | (1ULL << WIDX_TAB_3) | (1ULL << WIDX_TAB_4) | (1ULL << WIDX_RENEW_RIDES) | (1ULL << WIDX_REMOVE_SIX_FLAGS) | (1ULL << WIDX_MAKE_DESTRUCTIBLE) | (1ULL << WIDX_FIX_ALL) | (1ULL << WIDX_FAST_LIFT_HILL) | (1ULL << WIDX_DISABLE_BRAKES_FAILURE) | (1ULL << WIDX_DISABLE_ALL_BREAKDOWNS) | (1ULL << WIDX_BUILD_IN_PAUSE_MODE) | (1ULL << WIDX_RESET_CRASH_STATUS) }; static rct_string_id window_cheats_page_titles[] = { @@ -658,19 +675,23 @@ static void cheat_give_all_guests(int object) FOR_ALL_GUESTS(spriteIndex, peep) { switch(object) { + case OBJECT_MONEY: + peep->cash_in_pocket = MONEY(1000,00); + break; case OBJECT_PARK_MAP: peep->item_standard_flags |= PEEP_ITEM_MAP; break; case OBJECT_BALLOON: peep->item_standard_flags |= PEEP_ITEM_BALLOON; peep->balloon_colour=scenario_rand_max(31); + peep_update_sprite_type(peep); break; case OBJECT_UMBRELLA: peep->item_standard_flags |= PEEP_ITEM_UMBRELLA; peep->umbrella_colour=scenario_rand_max(31); + peep_update_sprite_type(peep); break; } - peep_update_sprite_type(peep); } window_invalidate_by_class(WC_PEEP); } @@ -846,6 +867,9 @@ static void window_cheats_guests_mouseup() case WIDX_EXPLODE_GUESTS: cheat_explode_guests(); break; + case WIDX_GIVE_GUESTS_MONEY: + cheat_give_all_guests(OBJECT_MONEY); + break; case WIDX_GIVE_GUESTS_PARK_MAPS: cheat_give_all_guests(OBJECT_PARK_MAP); break; @@ -911,6 +935,9 @@ static void window_cheats_misc_mouseup() case WIDX_WIN_SCENARIO: scenario_success(); break; + case WIDX_HAVE_FUN: + RCT2_GLOBAL(RCT2_ADDRESS_OBJECTIVE_TYPE, uint8) = OBJECTIVE_HAVE_FUN; + break; case WIDX_UNLOCK_ALL_PRICES: gConfigCheat.unlock_all_prices ^= 1; config_save_default(); @@ -1054,6 +1081,12 @@ static void window_cheats_invalidate() w->pressed_widgets = 0; switch (w->page) { + case WINDOW_CHEATS_PAGE_MONEY: + RCT2_GLOBAL(0x013CE952, int) = 50000; + break; + case WINDOW_CHEATS_PAGE_GUESTS: + RCT2_GLOBAL(0x013CE952, int) = 10000; + break; case WINDOW_CHEATS_PAGE_MISC: w->widgets[WIDX_OPEN_CLOSE_PARK].image = RCT2_GLOBAL(RCT2_ADDRESS_PARK_FLAGS, uint32) & PARK_FLAGS_PARK_OPEN ? STR_CHEAT_CLOSE_PARK : STR_CHEAT_OPEN_PARK; @@ -1089,23 +1122,23 @@ static void window_cheats_paint() window_cheats_draw_tab_images(dpi, w); if (w->page == WINDOW_CHEATS_PAGE_MONEY){ - gfx_draw_string_left(dpi, STR_CHEAT_TIP_5K_MONEY, NULL, 0, w->x + XPL(0) + TXTO, w->y + YPL(0) + TXTO); - gfx_draw_string_left(dpi, STR_CHEAT_TIP_CLEAR_LOAN, NULL, 0, w->x + XPL(0) + TXTO, w->y + YPL(4) + TXTO); + RCT2_GLOBAL(0x0013CE952, money32) = CHEATS_MONEY_INCREMENT; + gfx_draw_string_left(dpi, STR_CHEAT_TIP_5K_MONEY, (void*)0x0013CE952, 0, w->x + XPL(0) + TXTO, w->y + YPL(0) + TXTO); + gfx_draw_string_left(dpi, STR_CHEAT_TIP_CLEAR_LOAN, NULL, 0, w->x + XPL(0) + TXTO, w->y + YPL(4) + TXTO); } else if(w->page == WINDOW_CHEATS_PAGE_MISC){ - gfx_draw_string_left(dpi, STR_CHEAT_STAFF_SPEED, NULL, 0, w->x + XPL(0) + TXTO, w->y + YPL(6) + TXTO); - gfx_draw_string_right(dpi, 5182, &park_rating_spinner_value, w->colours[2], w->x + WPL(1) - 10 - TXTO, w->y + YPL(8) + TXTO); + gfx_draw_string_left(dpi, STR_CHEAT_STAFF_SPEED, NULL, 0, w->x + XPL(0) + TXTO, w->y + YPL(15) + TXTO); + gfx_draw_string_right(dpi, 5182, &park_rating_spinner_value, w->colours[2], w->x + WPL(1) - 10 - TXTO, w->y + YPL(4) + TXTO); } else if (w->page == WINDOW_CHEATS_PAGE_GUESTS){ - gfx_draw_string_left(dpi, STR_CHEAT_GUEST_HAPPINESS, NULL, 0, w->x + XPL(0) + TXTO, w->y + YPL(0) + TXTO); - gfx_draw_string_left(dpi, STR_CHEAT_GUEST_ENERGY, NULL, 0, w->x + XPL(0) + TXTO, w->y + YPL(1) + TXTO); - gfx_draw_string_left(dpi, STR_CHEAT_GUEST_HUNGER, NULL, 0, w->x + XPL(0) + TXTO, w->y + YPL(2) + TXTO); - gfx_draw_string_left(dpi, STR_CHEAT_GUEST_THIRST, NULL, 0, w->x + XPL(0) + TXTO, w->y + YPL(3) + TXTO); - gfx_draw_string_left(dpi, STR_CHEAT_GUEST_NAUSEA, NULL, 0, w->x + XPL(0) + TXTO, w->y + YPL(4) + TXTO); - gfx_draw_string_left(dpi, STR_CHEAT_GUEST_NAUSEA_TOLERANCE, NULL, 0, w->x + XPL(0) + TXTO, w->y + YPL(5) + TXTO); - gfx_draw_string_left(dpi, STR_CHEAT_GUEST_BATHROOM, NULL, 0, w->x + XPL(0) + TXTO, w->y + YPL(6) + TXTO); - gfx_draw_string_left(dpi, STR_CHEAT_GUEST_PREFERRED_INTENSITY,NULL, 0, w->x + XPL(0) + TXTO, w->y + YPL(7) + TXTO); - gfx_draw_string_left(dpi, STR_CHEAT_GIVE_ALL_GUESTS, NULL, 0, w->x + XPL(0) + TXTO, w->y + YPL(8) + TXTO); + gfx_draw_string_left(dpi, STR_CHEAT_GUEST_HAPPINESS, NULL, 0, w->x + XPL(0) + TXTO, w->y + YPL(1) + TXTO); + gfx_draw_string_left(dpi, STR_CHEAT_GUEST_ENERGY, NULL, 0, w->x + XPL(0) + TXTO, w->y + YPL(2) + TXTO); + gfx_draw_string_left(dpi, STR_CHEAT_GUEST_HUNGER, NULL, 0, w->x + XPL(0) + TXTO, w->y + YPL(3) + TXTO); + gfx_draw_string_left(dpi, STR_CHEAT_GUEST_THIRST, NULL, 0, w->x + XPL(0) + TXTO, w->y + YPL(4) + TXTO); + gfx_draw_string_left(dpi, STR_CHEAT_GUEST_NAUSEA, NULL, 0, w->x + XPL(0) + TXTO, w->y + YPL(5) + TXTO); + gfx_draw_string_left(dpi, STR_CHEAT_GUEST_NAUSEA_TOLERANCE, NULL, 0, w->x + XPL(0) + TXTO, w->y + YPL(6) + TXTO); + gfx_draw_string_left(dpi, STR_CHEAT_GUEST_BATHROOM, NULL, 0, w->x + XPL(0) + TXTO, w->y + YPL(7) + TXTO); + gfx_draw_string_left(dpi, STR_CHEAT_GUEST_PREFERRED_INTENSITY,NULL, 0, w->x + XPL(0) + TXTO, w->y + YPL(8) + TXTO); } }