1
0
mirror of https://github.com/OpenRCT2/OpenRCT2 synced 2026-01-15 11:03:00 +01:00

Merge pull request #1287 from LRFLEW/explode

EXPLODE!!!
This commit is contained in:
Ted John
2015-06-10 01:00:18 +01:00
4 changed files with 26 additions and 1 deletions

View File

@@ -3618,3 +3618,5 @@ STR_5281 :{SMALLFONT}{BLACK}Features
STR_5282 :RCT1 Ride Open/Close Lights
STR_5283 :RCT1 Park Open/Close Lights
STR_5284 :RCT1 Scenario Selection Font
STR_5285 :EXPLODE!!!
STR_5286 :{MEDIUMFONT}{BLACK}Makes guests explode

View File

@@ -1000,6 +1000,7 @@ enum {
STR_CHEAT_HAPPY_GUESTS = 2764,
STR_CHEAT_LARGE_TRAM_GUESTS = 2765,
STR_CHEAT_NAUSEA = 5254,
STR_CHEAT_EXPLODE = 5285,
// Misc.
STR_CHEAT_FREEZE_CLIMATE = 2767,
@@ -1032,6 +1033,7 @@ enum {
STR_CHEAT_TIP_HAPPY_GUESTS = 2683,
STR_CHEAT_TIP_LARGE_TRAM_GUESTS = 2684,
STR_CHEAT_TIP_NAUSEA = 5255,
STR_CHEAT_TIP_EXPLODE = 5286,
// Cheat tab tips
STR_FINANCIAL_CHEATS_TIP = 5178,

View File

@@ -573,6 +573,7 @@ int peep_get_easteregg_name_id(rct_peep *peep);
int peep_is_mechanic(rct_peep *peep);
int peep_has_food(rct_peep* peep);
void peep_sprite_remove(rct_peep* peep);
void peep_remove(rct_peep* peep);
void peep_window_state_update(rct_peep* peep);
void peep_decrement_num_riders(rct_peep* peep);

View File

@@ -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);
}
}