diff --git a/src/object.c b/src/object.c index 1149b31dab..aca8d78f24 100644 --- a/src/object.c +++ b/src/object.c @@ -922,11 +922,12 @@ int paint_large_scenery(int flags, int ebx, int ecx, int edx, rct_drawpixelinfo* if (scenery_type->large_scenery.flags & (1 << 2)){ scenery_type->large_scenery.var_16 = image_id; - if (!(scenery_type->large_scenery.var_0C & 1)){ - image_id += *((uint8*)(scenery_type->large_scenery.var_12 + 0xD)) * 4; + uint8* edx = (uint8*)scenery_type->large_scenery.var_12; + if (!(edx[0xC] & 1)){ + image_id += edx[0xD] * 4; } else{ - image_id += *((uint8*)(scenery_type->large_scenery.var_12 + 0xD)) * 2; + image_id += edx[0xD] * 2; } } scenery_type->image = image_id; diff --git a/src/world/scenery.h b/src/world/scenery.h index ab37fe5d24..0f9d5c4685 100644 --- a/src/world/scenery.h +++ b/src/world/scenery.h @@ -61,7 +61,7 @@ typedef struct { uint8 tool_id; // 0x06 uint8 flags; // 0x07 sint16 price; // 0x08 - sint16 removal_price; + sint16 removal_price; // 0x0A uint32 var_0C; uint8 scenery_tab_id; // 0x10 uint8 var_11;