1
0
mirror of https://github.com/OpenRCT2/OpenRCT2 synced 2026-01-06 06:32:56 +01:00

use pointer for smallscenery/var10

This commit is contained in:
Ted John
2016-07-04 18:01:29 +01:00
parent 42ad4ddfd1
commit 82d90fe350
3 changed files with 6 additions and 4 deletions

View File

@@ -43,7 +43,7 @@ void SmallSceneryObject::ReadLegacy(IReadObjectContext * context, IStream * stre
_legacyType.small_scenery.tool_id = stream->ReadValue<uint8>();
_legacyType.small_scenery.price = stream->ReadValue<sint16>();
_legacyType.small_scenery.removal_price = stream->ReadValue<sint16>();
_legacyType.small_scenery.var_10 = stream->ReadValue<uint32>();
stream->Seek(4, STREAM_SEEK_CURRENT);
_legacyType.small_scenery.var_14 = stream->ReadValue<uint16>();
_legacyType.small_scenery.var_16 = stream->ReadValue<uint16>();
_legacyType.small_scenery.var_18 = stream->ReadValue<uint16>();
@@ -93,7 +93,7 @@ void SmallSceneryObject::Load()
if (_legacyType.small_scenery.flags & SMALL_SCENERY_FLAG16)
{
_legacyType.small_scenery.var_10 = (uint32)_var10data;
_legacyType.small_scenery.var_10 = _var10data;
}
}

View File

@@ -230,7 +230,7 @@ void scenery_paint(uint8 direction, int height, rct_map_element* mapElement) {
esi &= entry->small_scenery.var_16;
int image_id = 0;
if (esi < entry->small_scenery.var_18) {
image_id = ((uint8*)entry->small_scenery.var_10)[esi];
image_id = entry->small_scenery.var_10[esi];
}
image_id = (image_id * 4) + direction + entry->image;
if (entry->small_scenery.flags & (SMALL_SCENERY_FLAG21 | SMALL_SCENERY_FLAG17)) {

View File

@@ -28,13 +28,15 @@ typedef struct rct_small_scenery_entry {
uint8 tool_id; // 0x0B
sint16 price; // 0x0C
sint16 removal_price; // 0x0E
uint32 var_10;
uint8 *var_10;
uint16 var_14;
uint16 var_16;
uint16 var_18;
uint8 scenery_tab_id; // 0x1A
} rct_small_scenery_entry;
#ifdef PLATFORM_32BIT
assert_struct_size(rct_small_scenery_entry, 21);
#endif
typedef enum {
SMALL_SCENERY_FLAG_FULL_TILE = (1 << 0), // 0x1