mirror of https://github.com/OpenRCT2/OpenRCT2.git
add global macro: gGuestInitialHappiness
This commit is contained in:
parent
8509927dc7
commit
727a568e32
|
@ -483,13 +483,13 @@ static int cc_get(const utf8 **argv, int argc)
|
|||
console_printf("guest_initial_cash %d.%d0", gGuestInitialCash / 10, gGuestInitialCash % 10);
|
||||
}
|
||||
else if (strcmp(argv[0], "guest_initial_happiness") == 0) {
|
||||
uint32 current_happiness = RCT2_GLOBAL(RCT2_ADDRESS_GUEST_INITIAL_HAPPINESS, uint8);
|
||||
uint32 current_happiness = gGuestInitialHappiness;
|
||||
for (int i = 15; i <= 99; i++) {
|
||||
if (i == 99) {
|
||||
console_printf("guest_initial_happiness %d%% (%d)", 15, RCT2_GLOBAL(RCT2_ADDRESS_GUEST_INITIAL_HAPPINESS, uint8));
|
||||
console_printf("guest_initial_happiness %d%% (%d)", 15, gGuestInitialHappiness);
|
||||
}
|
||||
else if (current_happiness == calculate_guest_initial_happiness(i)) {
|
||||
console_printf("guest_initial_happiness %d%% (%d)", i, RCT2_GLOBAL(RCT2_ADDRESS_GUEST_INITIAL_HAPPINESS, uint8));
|
||||
console_printf("guest_initial_happiness %d%% (%d)", i, gGuestInitialHappiness);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -618,7 +618,7 @@ static int cc_set(const utf8 **argv, int argc)
|
|||
console_execute_silent("get guest_initial_cash");
|
||||
}
|
||||
else if (strcmp(argv[0], "guest_initial_happiness") == 0 && invalidArguments(&invalidArgs, int_valid[0])) {
|
||||
RCT2_GLOBAL(RCT2_ADDRESS_GUEST_INITIAL_HAPPINESS, uint8) = calculate_guest_initial_happiness((uint8)int_val[0]);
|
||||
gGuestInitialHappiness = calculate_guest_initial_happiness((uint8)int_val[0]);
|
||||
console_execute_silent("get guest_initial_happiness");
|
||||
}
|
||||
else if (strcmp(argv[0], "guest_initial_hunger") == 0 && invalidArguments(&invalidArgs, int_valid[0])) {
|
||||
|
|
|
@ -6116,9 +6116,9 @@ rct_peep *peep_generate(int x, int y, int z)
|
|||
|
||||
peep->nausea_tolerance = RCT2_ADDRESS(0x009823A0, uint8)[nausea_tolerance];
|
||||
|
||||
sint8 happiness = (scenario_rand() & 0x1F) - 15 + RCT2_GLOBAL(RCT2_ADDRESS_GUEST_INITIAL_HAPPINESS, uint8);
|
||||
sint8 happiness = (scenario_rand() & 0x1F) - 15 + gGuestInitialHappiness;
|
||||
|
||||
if (RCT2_GLOBAL(RCT2_ADDRESS_GUEST_INITIAL_HAPPINESS, uint8) == 0)
|
||||
if (gGuestInitialHappiness == 0)
|
||||
happiness += 0x80;
|
||||
|
||||
peep->happiness = happiness;
|
||||
|
|
|
@ -600,6 +600,7 @@ enum {
|
|||
if (peep->type == PEEP_TYPE_STAFF)
|
||||
|
||||
#define gGuestInitialCash RCT2_GLOBAL(RCT2_ADDRESS_GUEST_INITIAL_CASH, money16)
|
||||
#define gGuestInitialHappiness RCT2_GLOBAL(RCT2_ADDRESS_GUEST_INITIAL_HAPPINESS, uint8)
|
||||
|
||||
int peep_get_staff_count();
|
||||
int peep_can_be_picked_up(rct_peep* peep);
|
||||
|
|
|
@ -1343,7 +1343,7 @@ static void scenario_objective_check_guests_and_rating()
|
|||
news_item_add_to_queue(NEWS_ITEM_GRAPH, STR_PARK_HAS_BEEN_CLOSED_DOWN, 0);
|
||||
gParkFlags &= ~PARK_FLAGS_PARK_OPEN;
|
||||
scenario_failure();
|
||||
RCT2_GLOBAL(RCT2_ADDRESS_GUEST_INITIAL_HAPPINESS, uint8) = 50;
|
||||
gGuestInitialHappiness = 50;
|
||||
}
|
||||
} else if (RCT2_GLOBAL(RCT2_ADDRESS_COMPLETED_COMPANY_VALUE, money32) != 0x80000001) {
|
||||
RCT2_GLOBAL(RCT2_ADDRESS_PARK_RATING_WARNING_DAYS, uint16) = 0;
|
||||
|
|
|
@ -753,16 +753,16 @@ static void window_editor_scenario_options_guests_mousedown(int widgetIndex, rct
|
|||
window_invalidate(w);
|
||||
break;
|
||||
case WIDX_GUEST_INITIAL_HAPPINESS_INCREASE:
|
||||
if (RCT2_GLOBAL(RCT2_ADDRESS_GUEST_INITIAL_HAPPINESS, uint8) < 250) {
|
||||
RCT2_GLOBAL(RCT2_ADDRESS_GUEST_INITIAL_HAPPINESS, uint8) += 4;
|
||||
if (gGuestInitialHappiness < 250) {
|
||||
gGuestInitialHappiness += 4;
|
||||
} else {
|
||||
window_error_open(3264, STR_NONE);
|
||||
}
|
||||
window_invalidate(w);
|
||||
break;
|
||||
case WIDX_GUEST_INITIAL_HAPPINESS_DECREASE:
|
||||
if (RCT2_GLOBAL(RCT2_ADDRESS_GUEST_INITIAL_HAPPINESS, uint8) > 40) {
|
||||
RCT2_GLOBAL(RCT2_ADDRESS_GUEST_INITIAL_HAPPINESS, uint8) -= 4;
|
||||
if (gGuestInitialHappiness > 40) {
|
||||
gGuestInitialHappiness -= 4;
|
||||
} else {
|
||||
window_error_open(3265, STR_NONE);
|
||||
}
|
||||
|
@ -893,7 +893,7 @@ static void window_editor_scenario_options_guests_paint(rct_window *w, rct_drawp
|
|||
// Guest initial happiness value
|
||||
x = w->x + w->widgets[WIDX_GUEST_INITIAL_HAPPINESS].left + 1;
|
||||
y = w->y + w->widgets[WIDX_GUEST_INITIAL_HAPPINESS].top;
|
||||
arg = (RCT2_GLOBAL(RCT2_ADDRESS_GUEST_INITIAL_HAPPINESS, uint8) * 100) / 255;
|
||||
arg = (gGuestInitialHappiness * 100) / 255;
|
||||
gfx_draw_string_left(dpi, 3247, &arg, 0, x, y);
|
||||
|
||||
// Guest initial hunger label
|
||||
|
|
|
@ -108,7 +108,7 @@ void park_init()
|
|||
RCT2_GLOBAL(RCT2_ADDRESS_CURRENT_RESEARCH_LEVEL, uint8) = 2;
|
||||
|
||||
gGuestInitialCash = MONEY(50,00); // Cash per guest (average)
|
||||
RCT2_GLOBAL(RCT2_ADDRESS_GUEST_INITIAL_HAPPINESS, uint8) = calculate_guest_initial_happiness(50); // 50%
|
||||
gGuestInitialHappiness = calculate_guest_initial_happiness(50); // 50%
|
||||
RCT2_GLOBAL(RCT2_ADDRESS_GUEST_INITIAL_HUNGER, uint8) = 200;
|
||||
RCT2_GLOBAL(RCT2_ADDRESS_GUEST_INITIAL_THIRST, uint8) = 200;
|
||||
gScenarioObjectiveType = OBJECTIVE_GUESTS_BY;
|
||||
|
|
Loading…
Reference in New Issue