mirror of https://github.com/OpenRCT2/OpenRCT2.git
Merge branch 'master' of https://github.com/MaciekBaron/OpenRCT2 into MaciekBaron-master
This commit is contained in:
commit
9e6d19a672
|
@ -217,10 +217,16 @@
|
|||
#define RCT2_ADDRESS_NEW_WINDOW_PTR 0x014234B8
|
||||
#define RCT2_ADDRESS_VIEWPORT_LIST 0x014234BC
|
||||
#define RCT2_ADDRESS_NEW_VIEWPORT_PTR 0x01423570
|
||||
#define RCT2_ADDRESS_WINDOW_GUEST_LIST_SELECTED_FILTER 0x00F1EE06
|
||||
#define RCT2_ADDRESS_WINDOW_GUEST_LIST_SELECTED_TAB 0x00F1EE12
|
||||
|
||||
#define RCT2_ADDRESS_WINDOW_GUEST_LIST_SELECTED_FILTER 0x00F1EE06
|
||||
#define RCT2_ADDRESS_WINDOW_GUEST_LIST_SELECTED_TAB 0x00F1EE12
|
||||
#define RCT2_ADDRESS_WINDOW_GUEST_LIST_SELECTED_VIEW 0x00F1EE13
|
||||
|
||||
#define RCT2_ADDRESS_WINDOW_RIDE_LIST_INFORMATION_TYPE 0x00F43833
|
||||
#define RCT2_ADDRESS_WINDOW_RIDE_LIST_SELECTED_TAB 0x00F43824
|
||||
#define RCT2_ADDRESS_WINDOW_RIDE_LIST_HIGHLIGHTED_ITEM 0x00F43825
|
||||
|
||||
#define RCT2_ADDRESS_WINDOW_STAFF_LIST_SELECTED_TAB 0x00F4390A
|
||||
|
||||
#define RCT2_ADDRESS_OS_TIME_MINUTE 0x01424654
|
||||
#define RCT2_ADDRESS_OS_TIME_HOUR 0x01424656
|
||||
|
|
32
src/editor.c
32
src/editor.c
|
@ -53,16 +53,16 @@ void editor_load()
|
|||
RCT2_CALLPROC_EBPSAFE(0x0069EB13); // sprites_init
|
||||
ride_init_all();
|
||||
window_guest_list_init_vars_a();
|
||||
RCT2_CALLPROC_EBPSAFE(0x006BD3A4);
|
||||
sub_6BD3A4();
|
||||
park_init();
|
||||
finance_init();
|
||||
date_reset();
|
||||
window_guest_list_init_vars_b();
|
||||
RCT2_CALLPROC_EBPSAFE(0x006BD39C);
|
||||
RCT2_GLOBAL(RCT2_ADDRESS_WINDOW_STAFF_LIST_SELECTED_TAB, uint8) = WINDOW_STAFF_LIST_TAB_HANDYMEN;
|
||||
RCT2_GLOBAL(RCT2_ADDRESS_SCREEN_FLAGS, uint8) = SCREEN_FLAGS_SCENARIO_EDITOR;
|
||||
RCT2_GLOBAL(0x0141F570, uint8) = 0;
|
||||
RCT2_GLOBAL(RCT2_ADDRESS_PARK_FLAGS, uint32) |= PARK_FLAGS_SHOW_REAL_GUEST_NAMES;
|
||||
RCT2_CALLPROC_EBPSAFE(0x006ACA58);
|
||||
window_ride_list_init_vars();
|
||||
RCT2_GLOBAL(0x0141F571, uint8) = 4;
|
||||
viewport_init_all();
|
||||
news_item_init_queue();
|
||||
|
@ -102,15 +102,15 @@ void trackdesigner_load()
|
|||
RCT2_CALLPROC_EBPSAFE(0x0069EB13); // reset_sprites
|
||||
ride_init_all();
|
||||
window_guest_list_init_vars_a();
|
||||
RCT2_CALLPROC_EBPSAFE(0x006BD3A4);
|
||||
sub_6BD3A4();
|
||||
park_init();
|
||||
finance_init();
|
||||
date_reset();
|
||||
window_guest_list_init_vars_b();
|
||||
RCT2_CALLPROC_EBPSAFE(0x006BD39C);
|
||||
RCT2_GLOBAL(RCT2_ADDRESS_WINDOW_STAFF_LIST_SELECTED_TAB, uint8) = WINDOW_STAFF_LIST_TAB_HANDYMEN;
|
||||
RCT2_GLOBAL(RCT2_ADDRESS_SCREEN_FLAGS, uint8) = SCREEN_FLAGS_TRACK_DESIGNER;
|
||||
RCT2_GLOBAL(0x0141F570, uint8) = 0;
|
||||
RCT2_CALLPROC_EBPSAFE(0x006ACA58);
|
||||
window_ride_list_init_vars();
|
||||
viewport_init_all();
|
||||
news_item_init_queue();
|
||||
RCT2_CALLPROC_EBPSAFE(0x0066EF38); // window_main_editor_create
|
||||
|
@ -140,15 +140,15 @@ void trackmanager_load()
|
|||
RCT2_CALLPROC_EBPSAFE(0x0069EB13); // reset_sprites
|
||||
ride_init_all();
|
||||
window_guest_list_init_vars_a();
|
||||
RCT2_CALLPROC_EBPSAFE(0x006BD3A4);
|
||||
sub_6BD3A4();
|
||||
park_init();
|
||||
finance_init();
|
||||
date_reset();
|
||||
window_guest_list_init_vars_b();
|
||||
RCT2_CALLPROC_EBPSAFE(0x006BD39C);
|
||||
RCT2_GLOBAL(RCT2_ADDRESS_WINDOW_STAFF_LIST_SELECTED_TAB, uint8) = WINDOW_STAFF_LIST_TAB_HANDYMEN;
|
||||
RCT2_GLOBAL(RCT2_ADDRESS_SCREEN_FLAGS, uint8) = SCREEN_FLAGS_TRACK_MANAGER;
|
||||
RCT2_GLOBAL(0x0141F570, uint8) = 0;
|
||||
RCT2_CALLPROC_EBPSAFE(0x006ACA58);
|
||||
window_ride_list_init_vars();
|
||||
viewport_init_all();
|
||||
news_item_init_queue();
|
||||
RCT2_CALLPROC_EBPSAFE(0x0066EF38); // window_main_editor_create
|
||||
|
@ -170,4 +170,18 @@ static void set_all_land_owned()
|
|||
int mapSize = RCT2_GLOBAL(RCT2_ADDRESS_MAP_SIZE, sint16);
|
||||
|
||||
game_do_command(64, 1, 64, 2, 56, (mapSize - 2) * 32, (mapSize - 2) * 32);
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* rct2: 0x006BD3A4
|
||||
*/
|
||||
void sub_6BD3A4() {
|
||||
for (short i = 0; i < 200; i++) {
|
||||
RCT2_ADDRESS(0x013CA672, uint8)[i] = 0;
|
||||
}
|
||||
for (short i = 200; i < 204; i++) {
|
||||
RCT2_ADDRESS(0x013CA672, uint8)[i] = 1;
|
||||
}
|
||||
RCT2_CALLPROC_EBPSAFE(0x006C0C3F);
|
||||
}
|
|
@ -26,4 +26,6 @@ void editor_convert_save_to_scenario();
|
|||
void trackdesigner_load();
|
||||
void trackmanager_load();
|
||||
|
||||
void sub_6BD3A4();
|
||||
|
||||
#endif
|
||||
|
|
|
@ -109,7 +109,7 @@ void finance_pay_interest()
|
|||
void finance_init() {
|
||||
|
||||
for (short i = 0; i < 56; i++) {
|
||||
RCT2_ADDRESS(0x01357848, uint32)[i] = 0;
|
||||
RCT2_ADDRESS(RCT2_ADDRESS_EXPENDITURE_TABLE, uint32)[i] = 0;
|
||||
}
|
||||
|
||||
RCT2_GLOBAL(0x0135832C, uint32) = 0;
|
||||
|
@ -119,7 +119,7 @@ void finance_init() {
|
|||
RCT2_GLOBAL(0x01358334, uint32) = 0;
|
||||
RCT2_GLOBAL(0x01358338, uint16) = 0;
|
||||
|
||||
RCT2_GLOBAL(0x013573DC, uint32) = 100000;
|
||||
RCT2_GLOBAL(0x013573DC, uint32) = 100000; // Cheat detection
|
||||
|
||||
RCT2_GLOBAL(RCT2_ADDRESS_CURRENT_MONEY_ENCRYPTED, sint32) = ENCRYPT_MONEY(100000);
|
||||
RCT2_GLOBAL(RCT2_ADDRESS_CURRENT_LOAN, sint32) = 100000;
|
||||
|
|
|
@ -1296,7 +1296,7 @@ int game_load_save()
|
|||
|
||||
RCT2_CALLPROC_EBPSAFE(0x0069E9A7);
|
||||
RCT2_CALLPROC_EBPSAFE(0x006DFEE4);
|
||||
RCT2_CALLPROC_EBPSAFE(0x006ACA58);
|
||||
window_ride_list_init_vars();
|
||||
RCT2_GLOBAL(0x009DEB7C, uint16) = 0;
|
||||
if (RCT2_GLOBAL(0x0013587C4, uint32) == 0) // this check is not in scenario play
|
||||
RCT2_CALLPROC_EBPSAFE(0x0069E869);
|
||||
|
|
|
@ -135,9 +135,9 @@ void rct2_init()
|
|||
date_reset();
|
||||
climate_reset(CLIMATE_COOL_AND_WET);
|
||||
RCT2_CALLPROC_EBPSAFE(0x006DFEE4);
|
||||
RCT2_CALLPROC_EBPSAFE(0x006ACA58);
|
||||
window_ride_list_init_vars();
|
||||
window_guest_list_init_vars_b();
|
||||
RCT2_CALLPROC_EBPSAFE(0x006BD39C);
|
||||
RCT2_GLOBAL(RCT2_ADDRESS_WINDOW_STAFF_LIST_SELECTED_TAB, uint8) = WINDOW_STAFF_LIST_TAB_HANDYMEN;
|
||||
|
||||
title_load();
|
||||
|
||||
|
|
|
@ -450,7 +450,7 @@ void scenario_load_and_play(rct_scenario_basic *scenario)
|
|||
window_invalidate(mainWindow);
|
||||
|
||||
RCT2_CALLPROC_EBPSAFE(0x0069E9A7);
|
||||
RCT2_CALLPROC_EBPSAFE(0x006ACA58);
|
||||
window_ride_list_init_vars();
|
||||
|
||||
RCT2_GLOBAL(0x00F663B0, sint32) = RCT2_GLOBAL(0x009AA0F0, sint32);
|
||||
RCT2_GLOBAL(0x00F663B4, sint32) = RCT2_GLOBAL(0x009AA0F4, sint32);
|
||||
|
|
|
@ -103,9 +103,9 @@ void title_load()
|
|||
date_reset();
|
||||
RCT2_CALLPROC_X(0x006C45ED, 0, 0, 0, 0, 0, 0, 0);
|
||||
RCT2_CALLPROC_EBPSAFE(0x006DFEE4);
|
||||
RCT2_CALLPROC_EBPSAFE(0x006ACA58);
|
||||
window_ride_list_init_vars();
|
||||
window_guest_list_init_vars_b();
|
||||
RCT2_CALLPROC_EBPSAFE(0x006BD39C);
|
||||
RCT2_GLOBAL(RCT2_ADDRESS_WINDOW_STAFF_LIST_SELECTED_TAB, uint8) = WINDOW_STAFF_LIST_TAB_HANDYMEN;
|
||||
RCT2_CALLPROC_EBPSAFE(0x0068AFFD);
|
||||
RCT2_CALLPROC_EBPSAFE(0x0069EBE4);
|
||||
viewport_init_all();
|
||||
|
@ -191,7 +191,7 @@ static void title_update_showcase()
|
|||
|
||||
window_invalidate(w);
|
||||
RCT2_CALLPROC_EBPSAFE(0x0069E9A7);
|
||||
RCT2_CALLPROC_EBPSAFE(0x006ACA58);
|
||||
window_ride_list_init_vars();
|
||||
RCT2_CALLPROC_EBPSAFE(0x00684AC3);
|
||||
RCT2_CALLPROC_EBPSAFE(0x006DFEE4);
|
||||
news_item_init_queue();
|
||||
|
|
24
src/window.c
24
src/window.c
|
@ -1203,4 +1203,28 @@ void window_guest_list_init_vars_b() {
|
|||
RCT2_GLOBAL(0x00F1EE02, uint32) = 0xFFFFFFFF;
|
||||
RCT2_GLOBAL(RCT2_ADDRESS_WINDOW_GUEST_LIST_SELECTED_FILTER, uint8) = 0xFF;
|
||||
RCT2_GLOBAL(0x00F1AF20, uint16) = 0;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* rct2: 0x006ACA58
|
||||
*/
|
||||
void window_ride_list_init_vars() {
|
||||
// If we are in the track designer, default to the Roller Coaster tab
|
||||
if (RCT2_GLOBAL(RCT2_ADDRESS_SCREEN_FLAGS, uint8) & SCREEN_FLAGS_TRACK_DESIGNER) {
|
||||
RCT2_GLOBAL(RCT2_ADDRESS_WINDOW_RIDE_LIST_SELECTED_TAB, uint8) = WINDOW_RIDE_LIST_TAB_ROLLER_COASTER;
|
||||
}
|
||||
else {
|
||||
RCT2_GLOBAL(RCT2_ADDRESS_WINDOW_RIDE_LIST_SELECTED_TAB, uint8) = WINDOW_RIDE_LIST_TAB_TRANSPORT;
|
||||
}
|
||||
|
||||
for (short i = 0; i < 6; i++) {
|
||||
/*
|
||||
Reset what is highlighted in each tab.
|
||||
Each 16bit number represents the item in its respective tab.
|
||||
*/
|
||||
RCT2_ADDRESS(RCT2_ADDRESS_WINDOW_RIDE_LIST_HIGHLIGHTED_ITEM, uint16)[i] = 0xFFFF;
|
||||
}
|
||||
|
||||
RCT2_GLOBAL(RCT2_ADDRESS_WINDOW_RIDE_LIST_INFORMATION_TYPE, uint8) = 0;
|
||||
}
|
18
src/window.h
18
src/window.h
|
@ -284,6 +284,23 @@ enum {
|
|||
WC_CHEATS = 110,
|
||||
} WINDOW_CLASS;
|
||||
|
||||
enum {
|
||||
WINDOW_RIDE_LIST_TAB_TRANSPORT,
|
||||
WINDOW_RIDE_LIST_TAB_GENTLE,
|
||||
WINDOW_RIDE_LIST_TAB_ROLLER_COASTER,
|
||||
WINDOW_RIDE_LIST_TAB_THRILL,
|
||||
WINDOW_RIDE_LIST_TAB_WATER,
|
||||
WINDOW_RIDE_LIST_TAB_SHOP,
|
||||
WINDOW_RIDE_LIST_TAB_RESEARCH
|
||||
} WINDOW_RIDE_LIST_TAB;
|
||||
|
||||
enum {
|
||||
WINDOW_STAFF_LIST_TAB_HANDYMEN,
|
||||
WINDOW_STAFF_LIST_TAB_MECHANICS,
|
||||
WINDOW_STAFF_LIST_TAB_SECURITY,
|
||||
WINDOW_STAFF_LIST_TAB_ENTERTAINERS
|
||||
} WINDOW_STAFF_LIST_TAB;
|
||||
|
||||
void window_dispatch_update_all();
|
||||
void window_update_all();
|
||||
rct_window *window_create(int x, int y, int width, int height, uint32 *event_handlers, rct_windowclass cls, uint16 flags);
|
||||
|
@ -349,5 +366,6 @@ void window_cheats_open();
|
|||
|
||||
void window_guest_list_init_vars_a();
|
||||
void window_guest_list_init_vars_b();
|
||||
void window_ride_list_init_vars();
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Reference in New Issue