OpenRCT2/src/object_list.h

40 lines
1.9 KiB
C
Raw Normal View History

#pragma once
#include "ride/ride.h"
#include "world/banner.h"
#include "world/entrance.h"
#include "world/footpath.h"
#include "world/scenery.h"
#include "world/water.h"
#if NO_RCT2
extern rct_ride_entry *gRideEntries[128];
extern rct_small_scenery_entry *gSmallSceneryEntries[252];
extern rct_large_scenery_entry *gLargeSceneryEntries[128];
extern rct_wall_scenery_entry *gWallSceneryEntries[128];
extern rct_banner *gBannerSceneryEntries[32];
extern rct_footpath_entry *gFootpathEntries[16];
extern rct_path_bit_scenery_entry *gFootpathAdditionEntries[15];
extern rct_scenery_set_entry *gSceneryGroupEntries[19];
extern rct_entrance_type *gParkEntranceEntries[1];
extern rct_water_type *gWaterEntries[1];
extern rct_stex_entry *gStexEntries[1];
#else
#define gRideEntries RCT2_ADDRESS(RCT2_ADDRESS_RIDE_ENTRIES, rct_ride_entry*)
#define gSmallSceneryEntries RCT2_ADDRESS(RCT2_ADDRESS_SMALL_SCENERY_ENTRIES, rct_small_scenery_entry*)
#define gLargeSceneryEntries RCT2_ADDRESS(RCT2_ADDRESS_LARGE_SCENERY_ENTRIES, rct_large_scenery_entry*)
#define gWallSceneryEntries RCT2_ADDRESS(RCT2_ADDRESS_WALL_SCENERY_ENTRIES, rct_wall_scenery_entry*)
#define gBannerSceneryEntries RCT2_ADDRESS(RCT2_ADDRESS_BANNER_SCENERY_ENTRIES, rct_banner*)
#define gFootpathEntries RCT2_ADDRESS(RCT2_ADDRESS_PATH_TYPES, rct_footpath_entry*)
#define gFootpathAdditionEntries RCT2_ADDRESS(RCT2_ADDRESS_PATH_BIT_SCENERY_ENTRIES, rct_path_bit_scenery_entry*)
#define gSceneryGroupEntries RCT2_ADDRESS(RCT2_ADDRESS_SCENERY_SET_ENTRIES, rct_scenery_set_entry*)
#define gParkEntranceEntries RCT2_ADDRESS(RCT2_ADDRESS_PARK_ENTRANCE_ENTRIES, rct_entrance_type*)
#define gWaterEntries RCT2_ADDRESS(RCT2_ADDRESS_WATER_ENTRIES, rct_water_type*)
#define gStexEntries RCT2_ADDRESS(RCT2_ADDRESS_SCENARIO_TEXT_ENTRIES, rct_stex_entry*)
#endif
extern rct_stex_entry *gStexTempChunk;
void object_list_init();
void *get_loaded_object_entry(size_t index);