Integrate data at 0x0098D884

This commit is contained in:
Marijn van der Werf 2016-09-17 15:01:08 +02:00 committed by Ted John
parent e96b1820c8
commit 4ba7b6820c
3 changed files with 18 additions and 8 deletions

View File

@ -24,6 +24,14 @@
#include "../../world/banner.h"
#include "../../world/scenery.h"
/** rct2: 0x0098D884 */
const rct_xy16 BannerBoundBoxes[][2] = {
{{ 1, 2}, { 1, 29}},
{{ 2, 32}, {29, 32}},
{{32, 2}, {32, 29}},
{{ 2, 1}, {29, 1}},
};
/**
*
* rct2: 0x006B9CC4
@ -44,8 +52,8 @@ void banner_paint(uint8 direction, int height, rct_map_element* map_element)
direction += map_element->properties.banner.position;
direction &= 3;
boundBoxOffsetX = RCT2_ADDRESS(0x98D884, uint16)[direction * 4];
boundBoxOffsetY = RCT2_ADDRESS(0x98D884 + 2, uint16)[direction * 4];
boundBoxOffsetX = BannerBoundBoxes[direction][0].x;
boundBoxOffsetY = BannerBoundBoxes[direction][0].y;
boundBoxOffsetZ = height + 2;
uint32 base_id = (direction << 1) + banner_scenery->image;
@ -63,8 +71,8 @@ void banner_paint(uint8 direction, int height, rct_map_element* map_element)
}
sub_98197C(image_id, 0, 0, 1, 1, 0x15, height, boundBoxOffsetX, boundBoxOffsetY, boundBoxOffsetZ, get_current_rotation());
boundBoxOffsetX = RCT2_ADDRESS(0x98D888, uint16)[direction * 4];
boundBoxOffsetY = RCT2_ADDRESS(0x98D888 + 2, uint16)[direction * 4];
boundBoxOffsetX = BannerBoundBoxes[direction][1].x;
boundBoxOffsetY = BannerBoundBoxes[direction][1].y;
image_id++;
sub_98197C(image_id, 0, 0, 1, 1, 0x15, height, boundBoxOffsetX, boundBoxOffsetY, boundBoxOffsetZ, get_current_rotation());

View File

@ -98,6 +98,8 @@ extern uint8 gVerticalTunnelHeight;
extern bool gShowSupportSegmentHeights;
extern const rct_xy16 BannerBoundBoxes[][2];
void paint_util_push_tunnel_left(uint16 height, uint8 type);
void paint_util_push_tunnel_right(uint16 height, uint8 type);
void paint_util_set_vertical_tunnel(uint16 height);

View File

@ -366,8 +366,8 @@ static void sub_6A4101(rct_map_element * map_element, uint16 height, uint32 ebp,
direction &= 3;
rct_xyz16 boundBoxOffsets = {
.x = RCT2_ADDRESS(0x0098D884, sint16)[direction * 4],
.y = RCT2_ADDRESS(0x0098D884 + 2, sint16)[direction * 4],
.x = BannerBoundBoxes[direction][0].x,
.y = BannerBoundBoxes[direction][0].y,
.z = height + 2
};
@ -375,8 +375,8 @@ static void sub_6A4101(rct_map_element * map_element, uint16 height, uint32 ebp,
sub_98197C(imageId, 0, 0, 1, 1, 21, height, boundBoxOffsets.x, boundBoxOffsets.y, boundBoxOffsets.z, get_current_rotation());
boundBoxOffsets.x = RCT2_ADDRESS(0x98D888, sint16)[direction * 4];
boundBoxOffsets.y = RCT2_ADDRESS(0x98D888 + 2, sint16)[direction * 4];
boundBoxOffsets.x = BannerBoundBoxes[direction][1].x;
boundBoxOffsets.y = BannerBoundBoxes[direction][1].y;
imageId++;
sub_98197C(imageId, 0, 0, 1, 1, 21, height, boundBoxOffsets.x, boundBoxOffsets.y, boundBoxOffsets.z, get_current_rotation());