1
0
mirror of https://github.com/OpenRCT2/OpenRCT2 synced 2025-12-24 00:03:11 +01:00

add initial s6 structure

This commit is contained in:
IntelOrca
2014-05-28 00:05:11 +01:00
parent 65e579045c
commit cc85e93e9e

View File

@@ -83,6 +83,283 @@ typedef struct {
char completed_by[64]; // 0x0270
} rct_scenario_basic;
/* This will be useful for backwards compatibility
typedef struct {
// SC6[0]
rct_s6_header header;
// SC6[1]
rct_s6_info info;
// SC6[2]
// packed objects
// SC6[3]
rct_object_entry objects[721];
// SC6[4]
uint16 elapsed_months;
uint16 current_day;
uint32 dword_F663AC;
uint32 scenario_srand_0;
uint32 scenario_srand_1;
// SC6[5]
rct_map_element map_elements[0x30000];
// SC6[6]
uint32 dword_010E63B8;
rct_sprite sprites[10000];
uint16 sprites_next_index;
uint16 sprites_start_vehicle;
uint16 sprites_start_peep;
uint16 sprites_start_textfx;
uint16 sprites_start_litter;
uint8 pad_013573C6[2];
uint16 word_013573C8;
uint8 pad_013573CA[4];
uint16 word_013573CE;
uint16 word_013573D0;
uint8 pad_013573D2[2];
uint16 word_013573D4;
uint8 pad_013573D6[4];
uint32 dword_013573D8;
uint32 dword_013573DC;
money32 current_loan;
uint32 park_flags;
money16 park_entrance_fee;
uint16 word_013573EA;
uint16 word_013573EC;
uint8 pad_013573EE[16];
uint8 byte_013573F0;
uint8 pad_013573F1[2];
rct2_peep_spawn peep_spawns[2];
uint8 guest_count_change_modifier;
uint8 byte_013573FF;
uint8 pad_01357400[4];
uint32 dword_01357404;
uint32 dword_01357408;
uint32 dword_0135740C;
uint32 dword_01357410[5];
uint32 dword_01357424[8];
uint32 dword_01357444[128];
uint32 dword_01357644[128];
// SC6[7]
uint16 guests_in_park;
uint16 guests_heading_for_park;
// Ignored in scenario
money32 expenditure_table[14];
uint32 dword_01357880[5];
uint32 dword_01357894;
uint32 dword_01357898;
uint32 dword_0135789C;
uint32 dword_013578A0;
uint32 dword_013578A4[201];
// SC6[8]
uint16 last_guests_in_park;
uint8 pad_01357BCA[3];
uint8 handyman_colour;
uint8 mechanic_colour;
uint8 security_colour;
// Ignored in scenario
uint32 dword_01357BD0[56];
// SC6[9]
uint16 park_rating;
// Ignored in scenario
uint8 park_rating_history[32];
uint8 guests_in_park_history[32];
// SC6[10]
uint16 word_01357CF2;
uint32 word_01357CF4;
uint8 byte_01357CF8[1000];
uint32 dword_013580E0[32];
uint16 word_013580E4[16];
uint8 byte_013580E6;
uint8 byte_013580E7;
uint8 byte_013580E8;
uint8 byte_013580E9;
uint16 park_size;
uint16 guest_generation_probability;
uint16 total_ride_value;
uint32 dword_013580F0;
uint16 dword_013580F4;
uint8 dword_013580F6;
uint8 dword_013580F7;
uint8 objective_type;
uint8 objective_year;
uint8 pad_013580FA[4];
money32 objective_currency;
uint16 objective_guests;
uint8 campaign_weeks_left[20];
uint8 campaign_ride_index[22];
// Ignored in scenario
money32 balance_history[128];
// SC6[11]
uint32 dword_0135832C;
uint32 current_profit;
uint32 dword_01358334;
uint16 word_01358338;
uint8 pad_0135833A[2];
// Ignored in scenario
uint8 pad_0135833C[2];
money32 park_value;
money32 park_value_history[128];
// SC6[12]
money32 completed_company_value;
uint32 total_admissions;
money32 income_from_admissions;
money32 company_value;
uint8 byte_01358750[16];
rct_award awards[4];
uint16 word_01358770;
uint16 word_01358772;
uint16 word_01358774;
uint8 pad_01358776[4];
uint32 dword_01358778[17];
uint32 dword_013587BC;
uint32 dword_013587C0;
uint32 dword_013587C4;
uint16 dword_013587C8;
uint8 pad_013587CA[16];
uint32 dword_013587D0;
uint8 pad_013587D4[8];
uint16 word_013587D8[16];
money32 cash;
uint8 pad_013587FC[50];
uint16 word_0135882E;
uint16 word_01358830;
uint16 word_01358832;
uint16 map_size;
uint16 word_01358836;
uint32 word_01358838;
uint16 suggested_max_guests;
uint16 word_0135883E;
uint8 word_01358840;
uint8 word_01358841;
uint8 pad_01358842[4];
uint32 dword_01358844;
uint8 pad_01358848;
uint32 dword_01358849;
uint8 pad_0135884D[2];
uint8 dword_0135884E[622];
uint8 pad_01359206[2];
uint16 word_01359208;
char scenario_name[64];
char scenario_description[255];
uint8 byte_01359349;
uint8 byte_0135934A;
uint8 pad_0135934B[3];
uint32 dword_0135934C;
uint16 park_entrance_x[4];
uint16 park_entrance_y[4];
uint16 park_entrance_z[4];
uint8 byte_01359368;
uint8 pad_01359369[3];
uint8 byte_0135936C[256];
uint8 byte_0135946C[3256];
uint8 byte_0135A124;
uint8 byte_0135A125;
uint16 word_0135A126;
uint8 byte_0135A128;
uint8 byte_0135A129;
uint8 byte_0135A12A;
uint8 byte_0135A12B[793];
uint8 byte_0135A444[1200];
char custom_strings[0x8000];
uint32 game_ticks_1;
rct_ride rides[255];
uint16 word_01388698;
uint16 saved_view_x;
uint16 saved_view_y;
uint16 saved_view_zoom_and_rotation;
uint8 byte_013886A0[6000];
uint8 byte_01389E10[6000];
uint16 word_0138B580;
uint8 pad_0138B580[2];
uint16 word_0138B584;
uint16 word_0138B586;
uint16 word_0138B588;
uint16 word_0138B58A;
uint16 word_0138B58C;
uint16 word_0138B58E;
uint8 byte_0138B590;
uint8 byte_0138B591;
uint8 byte_0138B592;
uint8 byte_0138B593;
uint16 word_0138B594;
uint16 word_0138B596;
uint16 word_0138B598;
uint16 word_0138B59A;
uint16 word_0138B59C;
uint16 word_0138B59E;
uint16 word_0138B5A0;
uint16 word_0138B5A2;
uint16 word_0138B5A4;
uint16 word_0138B5A6;
uint16 word_0138B5A8;
uint16 word_0138B5AA;
uint16 word_0138B5AC;
uint16 word_0138B5AE;
uint16 word_0138B5B0;
uint16 word_0138B5B2;
uint16 word_0138B5B4;
uint16 word_0138B5B6;
uint16 word_0138B5B8;
uint16 word_0138B5BA;
uint16 word_0138B5BC;
uint16 word_0138B5BE;
uint16 word_0138B5C0;
uint16 word_0138B5C2;
uint16 word_0138B5C4;
uint16 word_0138B5C6;
uint16 word_0138B5C8;
uint16 word_0138B5CA;
uint16 word_0138B5CC;
uint16 word_0138B5CE[31];
uint8 ride_measurements[0x25860];
uint32 dword_13B0E6C;
uint16 word_13B0E70;
uint32 dword_13B0E72[0x6600];
uint8 byte_13CA672[116];
uint8 byte_13CA6E6[84];
uint8 byte_13CA73A[4];
uint8 unk_13CA73E;
uint8 pad_13CA73E;
uint8 byte_13CA740;
uint8 byte_13CA741;
uint8 byte_13CA7424[4];
uint8 climate;
uint8 pad_013CA747;
uint16 climate_update_timer;
uint8 current_weather;
uint8 next_weather;
uint8 temperature;
uint8 next_temperature;
uint8 current_weather_effect;
uint8 next_weather_effect;
uint8 current_weather_gloom;
uint8 next_weather_gloom;
uint8 current_rain_level;
uint8 next_rain_level;
rct_news_item news_items[61];
uint8 byte_13CE730[64];
uint32 dword_13CE770;
uint16 word_13CE774;
uint16 word_13CE776[217];
} rct_s6_data;
*/
enum {
SCENARIO_FLAGS_VISIBLE = (1 << 0),
SCENARIO_FLAGS_COMPLETED = (1 << 1),