mirror of
https://github.com/OpenRCT2/OpenRCT2
synced 2026-01-24 07:14:31 +01:00
Fixed merge conflicts
This commit is contained in:
@@ -61,6 +61,7 @@ enum WINDOW_CHEATS_WIDGET_IDX {
|
||||
WIDX_HAPPY_GUESTS = 8, //Same as HIGH_MONEY as it is also the 8th widget but on a different page
|
||||
WIDX_TRAM_GUESTS,
|
||||
WIDX_NAUSEA_GUESTS,
|
||||
WIDX_EXPLODE_GUESTS,
|
||||
WIDX_FREEZE_CLIMATE = 8,
|
||||
WIDX_OPEN_CLOSE_PARK,
|
||||
WIDX_ZERO_CLEARANCE,
|
||||
@@ -131,6 +132,7 @@ static rct_widget window_cheats_guests_widgets[] = {
|
||||
{ WWT_CLOSEBOX, 1, XPL(0), WPL(0), YPL(1), HPL(1), STR_CHEAT_HAPPY_GUESTS, STR_NONE}, // happy guests
|
||||
{ WWT_CLOSEBOX, 1, XPL(0), WPL(0), YPL(3), HPL(3), STR_CHEAT_LARGE_TRAM_GUESTS, STR_NONE}, // large tram
|
||||
{ WWT_CLOSEBOX, 1, XPL(0), WPL(0), YPL(5), HPL(5), STR_CHEAT_NAUSEA, STR_NONE}, // nausea
|
||||
{ WWT_CLOSEBOX, 1, XPL(0), WPL(0), YPL(7), HPL(7), STR_CHEAT_EXPLODE, STR_NONE}, // explode guests
|
||||
{ WIDGETS_END },
|
||||
};
|
||||
|
||||
@@ -331,7 +333,7 @@ static void* window_cheats_page_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_PARK_ENTRANCE_FEE),
|
||||
(1 << WIDX_CLOSE) | (1 << WIDX_TAB_1) | (1 << WIDX_TAB_2) | (1 << WIDX_TAB_3) | (1 << WIDX_TAB_4) | (1 << WIDX_HAPPY_GUESTS) | (1 << WIDX_TRAM_GUESTS) | (1 << WIDX_NAUSEA_GUESTS),
|
||||
(1 << WIDX_CLOSE) | (1 << WIDX_TAB_1) | (1 << WIDX_TAB_2) | (1 << WIDX_TAB_3) | (1 << WIDX_TAB_4) | (1 << WIDX_HAPPY_GUESTS) | (1 << WIDX_TRAM_GUESTS) | (1 << WIDX_NAUSEA_GUESTS) | (1 << WIDX_EXPLODE_GUESTS),
|
||||
(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_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)
|
||||
};
|
||||
@@ -522,6 +524,20 @@ static void cheat_make_guests_nauseous()
|
||||
peep->flags |= PEEP_FLAGS_NAUSEA;
|
||||
}
|
||||
|
||||
static void cheat_explode_guests()
|
||||
{
|
||||
int sprite_index;
|
||||
rct_peep *peep;
|
||||
|
||||
FOR_ALL_GUESTS(sprite_index, peep) {
|
||||
unsigned int rand = scenario_rand();
|
||||
if ((rand & 0x07) == 0) {
|
||||
peep->flags |= PEEP_FLAGS_EXPLODE;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
#pragma endregion
|
||||
|
||||
void window_cheats_open()
|
||||
@@ -594,6 +610,9 @@ static void window_cheats_guests_mouseup()
|
||||
case WIDX_NAUSEA_GUESTS:
|
||||
cheat_make_guests_nauseous();
|
||||
break;
|
||||
case WIDX_EXPLODE_GUESTS:
|
||||
cheat_explode_guests();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -781,6 +800,7 @@ static void window_cheats_paint()
|
||||
gfx_draw_string_left(dpi, STR_CHEAT_TIP_HAPPY_GUESTS, NULL, 0, w->x + XPL(0) + TXTO, w->y + YPL(0) + TXTO);
|
||||
gfx_draw_string_left(dpi, STR_CHEAT_TIP_LARGE_TRAM_GUESTS, NULL, 0, w->x + XPL(0) + TXTO, w->y + YPL(2) + TXTO);
|
||||
gfx_draw_string_left(dpi, STR_CHEAT_TIP_NAUSEA, NULL, 0, w->x + XPL(0) + TXTO, w->y + YPL(4) + TXTO);
|
||||
gfx_draw_string_left(dpi, STR_CHEAT_TIP_EXPLODE, NULL, 0, w->x + XPL(0) + TXTO, w->y + YPL(6) + TXTO);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1047,9 +1047,6 @@ static void window_options_invalidate()
|
||||
// music: on/off
|
||||
RCT2_GLOBAL(0x013CE952 + 8, uint16) = STR_OFF + RCT2_GLOBAL(RCT2_ADDRESS_CONFIG_MUSIC, uint8);
|
||||
|
||||
// sound quality: low/medium/high
|
||||
RCT2_GLOBAL(0x013CE952 + 10, uint16) = STR_SOUND_LOW + gConfigSound.sound_quality;
|
||||
|
||||
widget_set_checkbox_value(w, WIDX_SOUND_CHECKBOX, gConfigSound.sound);
|
||||
widget_set_checkbox_value(w, WIDX_MUSIC_CHECKBOX, RCT2_GLOBAL(RCT2_ADDRESS_CONFIG_MUSIC, uint8));
|
||||
|
||||
|
||||
@@ -5530,7 +5530,45 @@ static void window_ride_graphs_scrollpaint()
|
||||
*/
|
||||
static void window_ride_income_toggle_primary_price(rct_window *w)
|
||||
{
|
||||
RCT2_CALLPROC_X(0x006ADEFD, 0, 0, 0, 0, (int)w, 0, 0);
|
||||
rct_ride *ride;
|
||||
rct_ride_type *ride_type;
|
||||
uint32 newFlags, shop_item;
|
||||
money16 price;
|
||||
|
||||
ride = GET_RIDE(w->number);
|
||||
ride_type = gRideTypeList[ride->subtype];
|
||||
|
||||
if (ride->type == RIDE_TYPE_TOILETS) {
|
||||
shop_item = 0x1F;
|
||||
}
|
||||
else {
|
||||
shop_item = ride_type->shop_item;
|
||||
if (shop_item == 0xFFFF)
|
||||
return;
|
||||
}
|
||||
if (shop_item == 0x3 || shop_item == 0x20 || shop_item == 0x21 || shop_item == 0x22) {
|
||||
newFlags = RCT2_GLOBAL(0x01358838, uint32);
|
||||
newFlags ^= (1 << 0x3);
|
||||
game_do_command(0, 1, 0, (0x2 << 8), GAME_COMMAND_SET_PARK_OPEN, newFlags, shop_item);
|
||||
|
||||
newFlags = RCT2_GLOBAL(0x0135934C, uint32);
|
||||
newFlags ^= (1 << 0x0) | (1 << 0x1) | (1 << 0x2);
|
||||
game_do_command(0, 1, 0, (0x3 << 8), GAME_COMMAND_SET_PARK_OPEN, newFlags, shop_item);
|
||||
}
|
||||
else {
|
||||
if (shop_item < 32) {
|
||||
newFlags = RCT2_GLOBAL(0x01358838, uint32);
|
||||
newFlags ^= (1 << shop_item);
|
||||
game_do_command(0, 1, 0, (0x2 << 8), GAME_COMMAND_SET_PARK_OPEN, newFlags, shop_item);
|
||||
}
|
||||
else {
|
||||
newFlags = RCT2_GLOBAL(0x0135934C, uint32);
|
||||
newFlags ^= (1 << (shop_item - 32));
|
||||
game_do_command(0, 1, 0, (0x3 << 8), GAME_COMMAND_SET_PARK_OPEN, newFlags, shop_item);
|
||||
}
|
||||
}
|
||||
price = ride->price;
|
||||
game_do_command(0, 1, 0, w->number, GAME_COMMAND_SET_RIDE_PRICE, price, 0);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -5539,7 +5577,41 @@ static void window_ride_income_toggle_primary_price(rct_window *w)
|
||||
*/
|
||||
static void window_ride_income_toggle_secondary_price(rct_window *w)
|
||||
{
|
||||
RCT2_CALLPROC_X(0x006AE06E, 0, 0, 0, 0, (int)w, 0, 0);
|
||||
rct_ride *ride;
|
||||
rct_ride_type *ride_type;
|
||||
uint32 newFlags, shop_item;
|
||||
money16 price;
|
||||
|
||||
ride = GET_RIDE(w->number);
|
||||
ride_type = gRideTypeList[ride->subtype];
|
||||
|
||||
shop_item = ride_type->shop_item_secondary;
|
||||
if (shop_item == 0xFF)
|
||||
shop_item = RCT2_GLOBAL(0x0097D7CB + (ride->type * 4), uint8);
|
||||
|
||||
if (shop_item == 0x3 || shop_item == 0x20 || shop_item == 0x21 || shop_item == 0x22) {
|
||||
newFlags = RCT2_GLOBAL(0x01358838, uint32);
|
||||
newFlags ^= (1 << 0x3);
|
||||
game_do_command(0, 1, 0, (0x2 << 8), GAME_COMMAND_SET_PARK_OPEN, newFlags, shop_item);
|
||||
|
||||
newFlags = RCT2_GLOBAL(0x0135934C, uint32);
|
||||
newFlags ^= (1 << 0x0) | (1 << 0x1) | (1 << 0x2);
|
||||
game_do_command(0, 1, 0, (0x3 << 8), GAME_COMMAND_SET_PARK_OPEN, newFlags, shop_item);
|
||||
}
|
||||
else {
|
||||
if (shop_item < 32) {
|
||||
newFlags = RCT2_GLOBAL(0x01358838, uint32);
|
||||
newFlags ^= (1 << shop_item);
|
||||
game_do_command(0, 1, 0, (0x2 << 8), GAME_COMMAND_SET_PARK_OPEN, newFlags, shop_item);
|
||||
}
|
||||
else {
|
||||
newFlags = RCT2_GLOBAL(0x0135934C, uint32);
|
||||
newFlags ^= (1 << (shop_item - 32));
|
||||
game_do_command(0, 1, 0, (0x3 << 8), GAME_COMMAND_SET_PARK_OPEN, newFlags, shop_item);
|
||||
}
|
||||
}
|
||||
price = ride->price_secondary;
|
||||
game_do_command(0, 1, 0, (1 << 8) | w->number, GAME_COMMAND_SET_RIDE_PRICE, price, 0);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user