mirror of https://github.com/OpenRCT2/OpenRCT2.git
Remove rotation argument from sub_98197C
This commit is contained in:
parent
77fb74d5b6
commit
3f92471ffb
|
@ -903,17 +903,20 @@ paint_struct * sub_98196C(
|
|||
* @param bound_box_offset_x (0x009DEA52)
|
||||
* @param bound_box_offset_y (0x009DEA54)
|
||||
* @param bound_box_offset_z (0x009DEA56)
|
||||
* @param rotation (ebp)
|
||||
* @return (ebp) paint_struct on success (CF == 0), nullptr on failure (CF == 1)
|
||||
*/
|
||||
paint_struct * sub_98197C(
|
||||
paint_session * session,
|
||||
uint32 image_id,
|
||||
sint8 x_offset, sint8 y_offset,
|
||||
sint16 bound_box_length_x, sint16 bound_box_length_y, sint8 bound_box_length_z,
|
||||
sint16 z_offset,
|
||||
sint16 bound_box_offset_x, sint16 bound_box_offset_y, sint16 bound_box_offset_z,
|
||||
uint32 rotation)
|
||||
paint_session * session,
|
||||
uint32 image_id,
|
||||
sint8 x_offset,
|
||||
sint8 y_offset,
|
||||
sint16 bound_box_length_x,
|
||||
sint16 bound_box_length_y,
|
||||
sint8 bound_box_length_z,
|
||||
sint16 z_offset,
|
||||
sint16 bound_box_offset_x,
|
||||
sint16 bound_box_offset_y,
|
||||
sint16 bound_box_offset_z)
|
||||
{
|
||||
session->UnkF1AD28 = nullptr;
|
||||
session->UnkF1AD2C = nullptr;
|
||||
|
@ -935,8 +938,8 @@ paint_struct * sub_98197C(
|
|||
(sint16)ps->bounds.y
|
||||
};
|
||||
|
||||
rotate_map_coordinates(&attach.x, &attach.y, rotation);
|
||||
switch (rotation)
|
||||
rotate_map_coordinates(&attach.x, &attach.y, session->CurrentRotation);
|
||||
switch (session->CurrentRotation)
|
||||
{
|
||||
case 0:
|
||||
break;
|
||||
|
@ -1033,14 +1036,9 @@ paint_struct * sub_98199C(
|
|||
|
||||
if (session->UnkF1AD28 == nullptr)
|
||||
{
|
||||
return sub_98197C(session,
|
||||
image_id,
|
||||
x_offset, y_offset,
|
||||
bound_box_length_x, bound_box_length_y, bound_box_length_z,
|
||||
z_offset,
|
||||
bound_box_offset_x, bound_box_offset_y, bound_box_offset_z,
|
||||
rotation
|
||||
);
|
||||
return sub_98197C(
|
||||
session, image_id, x_offset, y_offset, bound_box_length_x, bound_box_length_y, bound_box_length_z, z_offset,
|
||||
bound_box_offset_x, bound_box_offset_y, bound_box_offset_z);
|
||||
}
|
||||
|
||||
LocationXYZ16 offset = { x_offset, y_offset, z_offset };
|
||||
|
|
|
@ -185,7 +185,18 @@ paint_struct * sub_98196C(
|
|||
sint16 bound_box_length_y,
|
||||
sint8 bound_box_length_z,
|
||||
sint16 z_offset);
|
||||
paint_struct * sub_98197C(paint_session * session, uint32 image_id, sint8 x_offset, sint8 y_offset, sint16 bound_box_length_x, sint16 bound_box_length_y, sint8 bound_box_length_z, sint16 z_offset, sint16 bound_box_offset_x, sint16 bound_box_offset_y, sint16 bound_box_offset_z, uint32 rotation);
|
||||
paint_struct * sub_98197C(
|
||||
paint_session * session,
|
||||
uint32 image_id,
|
||||
sint8 x_offset,
|
||||
sint8 y_offset,
|
||||
sint16 bound_box_length_x,
|
||||
sint16 bound_box_length_y,
|
||||
sint8 bound_box_length_z,
|
||||
sint16 z_offset,
|
||||
sint16 bound_box_offset_x,
|
||||
sint16 bound_box_offset_y,
|
||||
sint16 bound_box_offset_z);
|
||||
paint_struct * sub_98198C(paint_session * session, uint32 image_id, sint8 x_offset, sint8 y_offset, sint16 bound_box_length_x, sint16 bound_box_length_y, sint8 bound_box_length_z, sint16 z_offset, sint16 bound_box_offset_x, sint16 bound_box_offset_y, sint16 bound_box_offset_z, uint32 rotation);
|
||||
paint_struct * sub_98199C(paint_session * session, uint32 image_id, sint8 x_offset, sint8 y_offset, sint16 bound_box_length_x, sint16 bound_box_length_y, sint8 bound_box_length_z, sint16 z_offset, sint16 bound_box_offset_x, sint16 bound_box_offset_y, sint16 bound_box_offset_z, uint32 rotation);
|
||||
|
||||
|
|
|
@ -45,9 +45,13 @@ paint_struct * sub_98197C_rotated(
|
|||
sint16 bound_box_offset_x, sint16 bound_box_offset_y, sint16 bound_box_offset_z)
|
||||
{
|
||||
if (direction & 1) {
|
||||
return sub_98197C(session, image_id, y_offset, x_offset, bound_box_length_y, bound_box_length_x, bound_box_length_z, z_offset, bound_box_offset_y, bound_box_offset_x, bound_box_offset_z, get_current_rotation());
|
||||
return sub_98197C(
|
||||
session, image_id, y_offset, x_offset, bound_box_length_y, bound_box_length_x, bound_box_length_z, z_offset,
|
||||
bound_box_offset_y, bound_box_offset_x, bound_box_offset_z);
|
||||
} else {
|
||||
return sub_98197C(session, image_id, x_offset, y_offset, bound_box_length_x, bound_box_length_y, bound_box_length_z, z_offset, bound_box_offset_x, bound_box_offset_y, bound_box_offset_z, get_current_rotation());
|
||||
return sub_98197C(
|
||||
session, image_id, x_offset, y_offset, bound_box_length_x, bound_box_length_y, bound_box_length_z, z_offset,
|
||||
bound_box_offset_x, bound_box_offset_y, bound_box_offset_z);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -392,9 +392,9 @@ bool wooden_a_supports_paint_setup(paint_session * session, sint32 supportType,
|
|||
} else {
|
||||
imageId += word_97B3C4[slope & TILE_ELEMENT_SURFACE_SLOPE_MASK];
|
||||
imageId |= imageColourFlags;
|
||||
sub_98197C(session, imageId, 0, 0, 32, 32, 11, z, 0, 0, z + 2, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 32, 32, 11, z, 0, 0, z + 2);
|
||||
|
||||
sub_98197C(session, imageId + 4, 0, 0, 32, 32, 11, z + 16, 0, 0, z + 16 + 2, rotation);
|
||||
sub_98197C(session, imageId + 4, 0, 0, 32, 32, 11, z + 16, 0, 0, z + 16 + 2);
|
||||
|
||||
hasSupports = true;
|
||||
}
|
||||
|
@ -416,7 +416,7 @@ bool wooden_a_supports_paint_setup(paint_session * session, sint32 supportType,
|
|||
imageId += word_97B3C4[slope & TILE_ELEMENT_SURFACE_SLOPE_MASK];
|
||||
imageId |= imageColourFlags;
|
||||
|
||||
sub_98197C(session, imageId, 0, 0, 32, 32, 11, z, 0, 0, z + 2, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 32, 32, 11, z, 0, 0, z + 2);
|
||||
hasSupports = true;
|
||||
}
|
||||
z += 16;
|
||||
|
@ -462,7 +462,9 @@ bool wooden_a_supports_paint_setup(paint_session * session, sint32 supportType,
|
|||
unk_supports_desc_bound_box bBox = byte_97B23C[special].bounding_box;
|
||||
|
||||
if (byte_97B23C[special].var_6 == 0 || session->WoodenSupportsPrependTo == nullptr) {
|
||||
sub_98197C(session, imageId, 0, 0, bBox.length.x, bBox.length.y, bBox.length.z, z, bBox.offset.x, bBox.offset.y, bBox.offset.z + z, rotation);
|
||||
sub_98197C(
|
||||
session, imageId, 0, 0, bBox.length.x, bBox.length.y, bBox.length.z, z, bBox.offset.x, bBox.offset.y,
|
||||
bBox.offset.z + z);
|
||||
hasSupports = true;
|
||||
} else {
|
||||
hasSupports = true;
|
||||
|
@ -532,24 +534,10 @@ bool wooden_b_supports_paint_setup(paint_session * session, sint32 supportType,
|
|||
} else {
|
||||
imageId += word_97B3C4[session->Support.slope & TILE_ELEMENT_SURFACE_SLOPE_MASK];
|
||||
|
||||
sub_98197C(session,
|
||||
imageId | imageColourFlags,
|
||||
0, 0,
|
||||
32, 32, 11,
|
||||
baseHeight,
|
||||
0, 0, baseHeight + 2,
|
||||
get_current_rotation()
|
||||
);
|
||||
sub_98197C(session, imageId | imageColourFlags, 0, 0, 32, 32, 11, baseHeight, 0, 0, baseHeight + 2);
|
||||
baseHeight += 16;
|
||||
|
||||
sub_98197C(session,
|
||||
(imageId + 4) | imageColourFlags,
|
||||
0, 0,
|
||||
32, 32, 3,
|
||||
baseHeight,
|
||||
0, 0, baseHeight + 2,
|
||||
get_current_rotation()
|
||||
);
|
||||
sub_98197C(session, (imageId + 4) | imageColourFlags, 0, 0, 32, 32, 3, baseHeight, 0, 0, baseHeight + 2);
|
||||
baseHeight += 16;
|
||||
|
||||
_9E32B1 = true;
|
||||
|
@ -568,14 +556,7 @@ bool wooden_b_supports_paint_setup(paint_session * session, sint32 supportType,
|
|||
} else {
|
||||
imageId += word_97B3C4[session->Support.slope & TILE_ELEMENT_SURFACE_SLOPE_MASK];
|
||||
|
||||
sub_98197C(session,
|
||||
imageId | imageColourFlags,
|
||||
0, 0,
|
||||
32, 32, 3,
|
||||
baseHeight,
|
||||
0, 0, baseHeight + 2,
|
||||
get_current_rotation()
|
||||
);
|
||||
sub_98197C(session, imageId | imageColourFlags, 0, 0, 32, 32, 3, baseHeight, 0, 0, baseHeight + 2);
|
||||
baseHeight += 16;
|
||||
|
||||
_9E32B1 = true;
|
||||
|
@ -624,14 +605,9 @@ bool wooden_b_supports_paint_setup(paint_session * session, sint32 supportType,
|
|||
unk_supports_desc_bound_box boundBox = supportsDesc.bounding_box;
|
||||
|
||||
if (supportsDesc.var_6 == 0 || session->WoodenSupportsPrependTo == nullptr) {
|
||||
sub_98197C(session,
|
||||
imageId | imageColourFlags,
|
||||
0, 0,
|
||||
boundBox.length.x, boundBox.length.y, boundBox.length.z,
|
||||
baseHeight,
|
||||
boundBox.offset.x, boundBox.offset.y, boundBox.offset.z + baseHeight,
|
||||
get_current_rotation()
|
||||
);
|
||||
sub_98197C(
|
||||
session, imageId | imageColourFlags, 0, 0, boundBox.length.x, boundBox.length.y, boundBox.length.z,
|
||||
baseHeight, boundBox.offset.x, boundBox.offset.y, boundBox.offset.z + baseHeight);
|
||||
_9E32B1 = true;
|
||||
} else {
|
||||
paint_struct * paintStruct = sub_98198C(session,
|
||||
|
@ -829,7 +805,7 @@ bool metal_a_supports_paint_setup(paint_session * session, uint8 supportType, ui
|
|||
image_id += z - 1;
|
||||
image_id |= imageColourFlags;
|
||||
|
||||
sub_98197C(session, image_id, xOffset, yOffset, 0, 0, 0, height, boundBoxOffsetX, boundBoxOffsetY, boundBoxOffsetZ, rotation);
|
||||
sub_98197C(session, image_id, xOffset, yOffset, 0, 0, 0, height, boundBoxOffsetX, boundBoxOffsetY, boundBoxOffsetZ);
|
||||
|
||||
height += z;
|
||||
}
|
||||
|
@ -991,14 +967,9 @@ bool metal_b_supports_paint_setup(paint_session * session, uint8 supportType, ui
|
|||
}
|
||||
|
||||
uint32 imageId = _97B15C[supportType].beam_id + (beamLength - 1);
|
||||
sub_98197C(session,
|
||||
imageId | imageColourFlags,
|
||||
loc_97AF20[originalSegment].x, loc_97AF20[originalSegment].y,
|
||||
0, 0, 0,
|
||||
baseHeight,
|
||||
loc_97AF20[originalSegment].x, loc_97AF20[originalSegment].y, height,
|
||||
get_current_rotation()
|
||||
);
|
||||
sub_98197C(
|
||||
session, imageId | imageColourFlags, loc_97AF20[originalSegment].x, loc_97AF20[originalSegment].y, 0, 0, 0,
|
||||
baseHeight, loc_97AF20[originalSegment].x, loc_97AF20[originalSegment].y, height);
|
||||
baseHeight += beamLength;
|
||||
}
|
||||
}
|
||||
|
@ -1057,24 +1028,10 @@ bool path_a_supports_paint_setup(paint_session * session, sint32 supportType, si
|
|||
|
||||
uint32 imageId = (supportType * 24) + word_97B3C4[session->Support.slope & TILE_ELEMENT_SURFACE_SLOPE_MASK] + pathEntry->bridge_image;
|
||||
|
||||
sub_98197C(session,
|
||||
imageId | imageColourFlags,
|
||||
0, 0,
|
||||
32, 32, 11,
|
||||
baseHeight,
|
||||
0, 0, baseHeight + 2,
|
||||
get_current_rotation()
|
||||
);
|
||||
sub_98197C(session, imageId | imageColourFlags, 0, 0, 32, 32, 11, baseHeight, 0, 0, baseHeight + 2);
|
||||
baseHeight += 16;
|
||||
|
||||
sub_98197C(session,
|
||||
(imageId + 4) | imageColourFlags,
|
||||
0, 0,
|
||||
32, 32, 11,
|
||||
baseHeight,
|
||||
0, 0, baseHeight + 2,
|
||||
get_current_rotation()
|
||||
);
|
||||
sub_98197C(session, (imageId + 4) | imageColourFlags, 0, 0, 32, 32, 11, baseHeight, 0, 0, baseHeight + 2);
|
||||
baseHeight += 16;
|
||||
|
||||
hasSupports = true;
|
||||
|
@ -1088,14 +1045,7 @@ bool path_a_supports_paint_setup(paint_session * session, sint32 supportType, si
|
|||
|
||||
uint32 ebx = (supportType * 24) + word_97B3C4[session->Support.slope & TILE_ELEMENT_SURFACE_SLOPE_MASK] + pathEntry->bridge_image;
|
||||
|
||||
sub_98197C(session,
|
||||
ebx | imageColourFlags,
|
||||
0, 0,
|
||||
32, 32, 11,
|
||||
baseHeight,
|
||||
0, 0, baseHeight + 2,
|
||||
get_current_rotation()
|
||||
);
|
||||
sub_98197C(session, ebx | imageColourFlags, 0, 0, 32, 32, 11, baseHeight, 0, 0, baseHeight + 2);
|
||||
|
||||
hasSupports = true;
|
||||
baseHeight += 16;
|
||||
|
@ -1129,14 +1079,9 @@ bool path_a_supports_paint_setup(paint_session * session, sint32 supportType, si
|
|||
unk_supports_desc_bound_box boundBox = supportsDesc.bounding_box;
|
||||
|
||||
if (supportsDesc.var_6 == 0 || session->WoodenSupportsPrependTo == nullptr) {
|
||||
sub_98197C(session,
|
||||
imageId | imageColourFlags,
|
||||
0, 0,
|
||||
boundBox.length.y, boundBox.length.x, boundBox.length.z,
|
||||
baseHeight,
|
||||
boundBox.offset.x, boundBox.offset.y, baseHeight + boundBox.offset.z,
|
||||
get_current_rotation()
|
||||
);
|
||||
sub_98197C(
|
||||
session, imageId | imageColourFlags, 0, 0, boundBox.length.y, boundBox.length.x, boundBox.length.z, baseHeight,
|
||||
boundBox.offset.x, boundBox.offset.y, baseHeight + boundBox.offset.z);
|
||||
hasSupports = true;
|
||||
} else {
|
||||
paint_struct * paintStruct = sub_98198C(session,
|
||||
|
@ -1284,14 +1229,9 @@ bool path_b_supports_paint_setup(paint_session * session, sint32 segment, sint32
|
|||
}
|
||||
|
||||
uint32 imageId = pathEntry->bridge_image + 20 + (z - 1);
|
||||
sub_98197C(session,
|
||||
imageId | imageColourFlags,
|
||||
loc_97AF20[segment].x, loc_97AF20[segment].y,
|
||||
0, 0, 0,
|
||||
baseHeight,
|
||||
loc_97AF20[segment].x, loc_97AF20[segment].y, baseHeight,
|
||||
get_current_rotation()
|
||||
);
|
||||
sub_98197C(
|
||||
session, imageId | imageColourFlags, loc_97AF20[segment].x, loc_97AF20[segment].y, 0, 0, 0, baseHeight,
|
||||
loc_97AF20[segment].x, loc_97AF20[segment].y, baseHeight);
|
||||
|
||||
baseHeight += z;
|
||||
}
|
||||
|
|
|
@ -176,28 +176,36 @@ void virtual_floor_paint(paint_session * session)
|
|||
|
||||
if (paintEdges & 0x1)
|
||||
{
|
||||
sub_98197C(session, SPR_G2_SELECTION_EDGE_NE | (!(occupiedEdges & 0x1)? ((litEdges & 0x1)? remap_lit : remap_base) : remap_edge),
|
||||
0, 0, 0, 0, 1, gMapVirtualFloorHeight, 5, 5, gMapVirtualFloorHeight + ((dullEdges & 0x1)? -2 : 0), get_current_rotation());
|
||||
sub_98197C(
|
||||
session,
|
||||
SPR_G2_SELECTION_EDGE_NE | (!(occupiedEdges & 0x1) ? ((litEdges & 0x1) ? remap_lit : remap_base) : remap_edge), 0,
|
||||
0, 0, 0, 1, gMapVirtualFloorHeight, 5, 5, gMapVirtualFloorHeight + ((dullEdges & 0x1) ? -2 : 0));
|
||||
}
|
||||
if (paintEdges & 0x2)
|
||||
{
|
||||
sub_98197C(session, SPR_G2_SELECTION_EDGE_SE | (!(occupiedEdges & 0x2)? ((litEdges & 0x2)? remap_lit : remap_base) : remap_edge),
|
||||
0, 0, 1, 1, 1, gMapVirtualFloorHeight, 16, 27, gMapVirtualFloorHeight + ((dullEdges & 0x2)? -2 : 0), get_current_rotation());
|
||||
sub_98197C(
|
||||
session,
|
||||
SPR_G2_SELECTION_EDGE_SE | (!(occupiedEdges & 0x2) ? ((litEdges & 0x2) ? remap_lit : remap_base) : remap_edge), 0,
|
||||
0, 1, 1, 1, gMapVirtualFloorHeight, 16, 27, gMapVirtualFloorHeight + ((dullEdges & 0x2) ? -2 : 0));
|
||||
}
|
||||
if (paintEdges & 0x4)
|
||||
{
|
||||
sub_98197C(session, SPR_G2_SELECTION_EDGE_SW | (!(occupiedEdges & 0x4)? ((litEdges & 0x4)? remap_lit : remap_base) : remap_edge),
|
||||
0, 0, 1, 1, 1, gMapVirtualFloorHeight, 27, 16, gMapVirtualFloorHeight + ((dullEdges & 0x4)? -2 : 0), get_current_rotation());
|
||||
sub_98197C(
|
||||
session,
|
||||
SPR_G2_SELECTION_EDGE_SW | (!(occupiedEdges & 0x4) ? ((litEdges & 0x4) ? remap_lit : remap_base) : remap_edge), 0,
|
||||
0, 1, 1, 1, gMapVirtualFloorHeight, 27, 16, gMapVirtualFloorHeight + ((dullEdges & 0x4) ? -2 : 0));
|
||||
}
|
||||
if (paintEdges & 0x8)
|
||||
{
|
||||
sub_98197C(session, SPR_G2_SELECTION_EDGE_NW | (!(occupiedEdges & 0x8)? ((litEdges & 0x8)? remap_lit : remap_base) : remap_edge),
|
||||
0, 0, 0, 0, 1, gMapVirtualFloorHeight, 5, 5, gMapVirtualFloorHeight + ((dullEdges & 0x8)? -2 : 0), get_current_rotation());
|
||||
sub_98197C(
|
||||
session,
|
||||
SPR_G2_SELECTION_EDGE_NW | (!(occupiedEdges & 0x8) ? ((litEdges & 0x8) ? remap_lit : remap_base) : remap_edge), 0,
|
||||
0, 0, 0, 1, gMapVirtualFloorHeight, 5, 5, gMapVirtualFloorHeight + ((dullEdges & 0x8) ? -2 : 0));
|
||||
}
|
||||
|
||||
if (!weAreOccupied && !weAreLit)
|
||||
{
|
||||
sint32 imageColourFlats = SPR_G2_SURFACE_GLASSY_RECOLOURABLE | IMAGE_TYPE_REMAP | IMAGE_TYPE_TRANSPARENT | PALETTE_WATER << 19;
|
||||
sub_98197C(session, imageColourFlats, 0, 0, 30, 30, 0, gMapVirtualFloorHeight, 2, 2, gMapVirtualFloorHeight - 3, get_current_rotation());
|
||||
sub_98197C(session, imageColourFlats, 0, 0, 30, 30, 0, gMapVirtualFloorHeight, 2, 2, gMapVirtualFloorHeight - 3);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -87,5 +87,5 @@ void litter_paint(paint_session * session, rct_litter *litter, sint32 imageDirec
|
|||
|
||||
// In the following call to sub_98197C, we add 4 (instead of 2) to the
|
||||
// bound_box_offset_z to make sure litter is drawn on top of railways
|
||||
sub_98197C(session, image_id, 0, 0, 4, 4, -1, litter->z, -4, -4, litter->z + 4, get_current_rotation());
|
||||
sub_98197C(session, image_id, 0, 0, 4, 4, -1, litter->z, -4, -4, litter->z + 4);
|
||||
}
|
||||
|
|
|
@ -123,37 +123,37 @@ void misc_paint(paint_session * session, rct_sprite *misc, sint32 imageDirection
|
|||
if (al & 1) {
|
||||
switch (ebx) {
|
||||
case 0:
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 3, height, -32, -3, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 3, height, -32, -3, height);
|
||||
break;
|
||||
|
||||
case 1:
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 3, height, -3, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 3, height, -3, 0, height);
|
||||
break;
|
||||
|
||||
case 2:
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 3, height, 0, -3, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 3, height, 0, -3, height);
|
||||
break;
|
||||
|
||||
case 3:
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 3, height, -3, -32, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 3, height, -3, -32, height);
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
switch (ebx) {
|
||||
case 0:
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 3, height, -32, 3, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 3, height, -32, 3, height);
|
||||
break;
|
||||
|
||||
case 1:
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 3, height, 3, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 3, height, 3, 0, height);
|
||||
break;
|
||||
|
||||
case 2:
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 3, height, 0, 3, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 3, height, 0, 3, height);
|
||||
break;
|
||||
|
||||
case 3:
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 3, height, 3, -32, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 3, height, 3, -32, height);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -82,7 +82,7 @@ void peep_paint(paint_session * session, rct_peep * peep, sint32 imageDirection)
|
|||
// bound_box_offset_z to make sure peeps are drawn on top of railways
|
||||
uint32 baseImageId = (imageDirection >> 3) + sprite.sprite_animation[spriteType].base_image + imageOffset * 4;
|
||||
uint32 imageId = baseImageId | peep->tshirt_colour << 19 | peep->trousers_colour << 24 | IMAGE_TYPE_REMAP | IMAGE_TYPE_REMAP_2_PLUS;
|
||||
sub_98197C(session, imageId, 0, 0, 1, 1, 11, peep->z, 0, 0, peep->z + 5, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 1, 11, peep->z, 0, 0, peep->z + 5);
|
||||
|
||||
if (baseImageId >= 10717 && baseImageId < 10749) {
|
||||
imageId = (baseImageId + 32) | peep->hat_colour << 19 | IMAGE_TYPE_REMAP;
|
||||
|
|
|
@ -75,12 +75,12 @@ void banner_paint(paint_session * session, uint8 direction, sint32 height, const
|
|||
IMAGE_TYPE_REMAP;
|
||||
}
|
||||
|
||||
sub_98197C(session, image_id, 0, 0, 1, 1, 0x15, height, boundBoxOffsetX, boundBoxOffsetY, boundBoxOffsetZ, get_current_rotation());
|
||||
sub_98197C(session, image_id, 0, 0, 1, 1, 0x15, height, boundBoxOffsetX, boundBoxOffsetY, boundBoxOffsetZ);
|
||||
boundBoxOffsetX = BannerBoundBoxes[direction][1].x;
|
||||
boundBoxOffsetY = BannerBoundBoxes[direction][1].y;
|
||||
|
||||
image_id++;
|
||||
sub_98197C(session, image_id, 0, 0, 1, 1, 0x15, height, boundBoxOffsetX, boundBoxOffsetY, boundBoxOffsetZ, get_current_rotation());
|
||||
sub_98197C(session, image_id, 0, 0, 1, 1, 0x15, height, boundBoxOffsetX, boundBoxOffsetY, boundBoxOffsetZ);
|
||||
|
||||
// Opposite direction
|
||||
direction ^= 2;
|
||||
|
|
|
@ -109,7 +109,7 @@ static void ride_entrance_exit_paint(paint_session * session, uint8 direction, s
|
|||
sint16 lengthY = (direction & 1) ? 28 : 2;
|
||||
sint16 lengthX = (direction & 1) ? 2 : 28;
|
||||
|
||||
sub_98197C(session, image_id, 0, 0, lengthX, lengthY, ah, height, 2, 2, height, get_current_rotation());
|
||||
sub_98197C(session, image_id, 0, 0, lengthX, lengthY, ah, height, 2, 2, height);
|
||||
|
||||
if (transparant_image_id){
|
||||
if (is_exit){
|
||||
|
@ -124,7 +124,8 @@ static void ride_entrance_exit_paint(paint_session * session, uint8 direction, s
|
|||
|
||||
image_id += 4;
|
||||
|
||||
sub_98197C(session, image_id, 0, 0, lengthX, lengthY, ah, height, (direction & 1) ? 28 : 2, (direction & 1) ? 2 : 28, height, get_current_rotation());
|
||||
sub_98197C(
|
||||
session, image_id, 0, 0, lengthX, lengthY, ah, height, (direction & 1) ? 28 : 2, (direction & 1) ? 2 : 28, height);
|
||||
|
||||
if (transparant_image_id){
|
||||
transparant_image_id += 4;
|
||||
|
@ -218,7 +219,7 @@ static void park_entrance_paint(paint_session * session, uint8 direction, sint32
|
|||
case 0:
|
||||
if (path_entry != nullptr) {
|
||||
image_id = (path_entry->image + 5 * (1 + (direction & 1))) | ghost_id;
|
||||
sub_98197C(session, image_id, 0, 0, 32, 0x1C, 0, height, 0, 2, height, get_current_rotation());
|
||||
sub_98197C(session, image_id, 0, 0, 32, 0x1C, 0, height, 0, 2, height);
|
||||
}
|
||||
|
||||
entrance = (rct_entrance_type *)object_entry_get_chunk(OBJECT_TYPE_PARK_ENTRANCE, 0);
|
||||
|
@ -227,7 +228,7 @@ static void park_entrance_paint(paint_session * session, uint8 direction, sint32
|
|||
return;
|
||||
}
|
||||
image_id = (entrance->image_id + direction * 3) | ghost_id;
|
||||
sub_98197C(session, image_id, 0, 0, 0x1C, 0x1C, 0x2F, height, 2, 2, height + 32, get_current_rotation());
|
||||
sub_98197C(session, image_id, 0, 0, 0x1C, 0x1C, 0x2F, height, 2, 2, height + 32);
|
||||
|
||||
if ((direction + 1) & (1 << 1))
|
||||
break;
|
||||
|
@ -274,7 +275,7 @@ static void park_entrance_paint(paint_session * session, uint8 direction, sint32
|
|||
return;
|
||||
}
|
||||
image_id = (entrance->image_id + part_index + direction * 3) | ghost_id;
|
||||
sub_98197C(session, image_id, 0, 0, 0x1A, di, 0x4F, height, 3, 3, height, get_current_rotation());
|
||||
sub_98197C(session, image_id, 0, 0, 0x1A, di, 0x4F, height, 3, 3, height);
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -307,7 +308,7 @@ void entrance_paint(paint_session * session, uint8 direction, sint32 height, con
|
|||
uint32 image_id = 0x20101689 + get_height_marker_offset() + (z / 16);
|
||||
image_id -= gMapBaseZ;
|
||||
|
||||
sub_98197C(session, image_id, 16, 16, 1, 1, 0, height, 31, 31, z + 64, get_current_rotation());
|
||||
sub_98197C(session, image_id, 16, 16, 1, 1, 0, height, 31, 31, z + 64);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -67,19 +67,25 @@ static void fence_paint_door(paint_session * session, uint32 imageId,
|
|||
if (sceneryEntry->wall.flags & WALL_SCENERY_IS_BANNER) {
|
||||
paint_struct * ps;
|
||||
|
||||
ps = sub_98197C(session, imageId, (sint8) offset.x, (sint8) offset.y, boundsR1.x, boundsR1.y, (sint8) boundsR1.z, offset.z, boundsR1_.x, boundsR1_.y, boundsR1_.z, get_current_rotation());
|
||||
ps = sub_98197C(
|
||||
session, imageId, (sint8)offset.x, (sint8)offset.y, boundsR1.x, boundsR1.y, (sint8)boundsR1.z, offset.z,
|
||||
boundsR1_.x, boundsR1_.y, boundsR1_.z);
|
||||
if (ps != nullptr) {
|
||||
ps->tertiary_colour = tertiaryColour;
|
||||
}
|
||||
|
||||
ps = sub_98197C(session, imageId + 1, (sint8) offset.x, (sint8) offset.y, boundsR2.x, boundsR2.y, (sint8) boundsR2.z, offset.z, boundsR2_.x, boundsR2_.y, boundsR2_.z, get_current_rotation());
|
||||
ps = sub_98197C(
|
||||
session, imageId + 1, (sint8)offset.x, (sint8)offset.y, boundsR2.x, boundsR2.y, (sint8)boundsR2.z, offset.z,
|
||||
boundsR2_.x, boundsR2_.y, boundsR2_.z);
|
||||
if (ps != nullptr) {
|
||||
ps->tertiary_colour = tertiaryColour;
|
||||
}
|
||||
} else {
|
||||
paint_struct * ps;
|
||||
|
||||
ps = sub_98197C(session, imageId, (sint8) offset.x, (sint8) offset.y, boundsL1.x, boundsL1.y, (sint8) boundsL1.z, offset.z, boundsL1_.x, boundsL1_.y, boundsL1_.z, get_current_rotation());
|
||||
ps = sub_98197C(
|
||||
session, imageId, (sint8)offset.x, (sint8)offset.y, boundsL1.x, boundsL1.y, (sint8)boundsL1.z, offset.z,
|
||||
boundsL1_.x, boundsL1_.y, boundsL1_.z);
|
||||
if (ps != nullptr) {
|
||||
ps->tertiary_colour = tertiaryColour;
|
||||
}
|
||||
|
@ -106,7 +112,9 @@ static void fence_paint_wall(paint_session * session, uint32 frameNum, const rct
|
|||
imageId = (imageId & 0x7FFFF) | dword_141F710;
|
||||
}
|
||||
|
||||
sub_98197C(session, imageId, (sint8)offset.x, (sint8)offset.y, bounds.x, bounds.y, (sint8)bounds.z, offset.z, boundsOffset.x, boundsOffset.y, boundsOffset.z, get_current_rotation());
|
||||
sub_98197C(
|
||||
session, imageId, (sint8)offset.x, (sint8)offset.y, bounds.x, bounds.y, (sint8)bounds.z, offset.z, boundsOffset.x,
|
||||
boundsOffset.y, boundsOffset.z);
|
||||
if (dword_141F710 == 0) {
|
||||
imageId = baseImageId + dword_141F718;
|
||||
sub_98199C(session, imageId, (sint8)offset.x, (sint8)offset.y, bounds.x, bounds.y, (sint8)bounds.z, offset.z, boundsOffset.x, boundsOffset.y, boundsOffset.z, get_current_rotation());
|
||||
|
@ -120,7 +128,9 @@ static void fence_paint_wall(paint_session * session, uint32 frameNum, const rct
|
|||
imageId = (imageId & 0x7FFFF) | dword_141F710;
|
||||
}
|
||||
|
||||
paint_struct * paint = sub_98197C(session, imageId, (sint8)offset.x, (sint8)offset.y, bounds.x, bounds.y, (sint8)bounds.z, offset.z, boundsOffset.x, boundsOffset.y, boundsOffset.z, get_current_rotation());
|
||||
paint_struct * paint = sub_98197C(
|
||||
session, imageId, (sint8)offset.x, (sint8)offset.y, bounds.x, bounds.y, (sint8)bounds.z, offset.z, boundsOffset.x,
|
||||
boundsOffset.y, boundsOffset.z);
|
||||
if (paint != nullptr) {
|
||||
paint->tertiary_colour = tertiaryColour;
|
||||
}
|
||||
|
|
|
@ -242,7 +242,7 @@ void large_scenery_paint(paint_session * session, uint8 direction, uint16 height
|
|||
boxlength.x = s98E3C4[esi].length.x;
|
||||
boxlength.y = s98E3C4[esi].length.y;
|
||||
boxlength.z = ah;
|
||||
sub_98197C(session, image_id, 0, 0, boxlength.x, boxlength.y, ah, height, boxoffset.x, boxoffset.y, boxoffset.z, get_current_rotation());
|
||||
sub_98197C(session, image_id, 0, 0, boxlength.x, boxlength.y, ah, height, boxoffset.x, boxoffset.y, boxoffset.z);
|
||||
if (entry->large_scenery.scrolling_mode == 0xFF || direction == 1 || direction == 2) {
|
||||
large_scenery_paint_supports(session, direction, height, tileElement, dword_F4387C, tile);
|
||||
return;
|
||||
|
|
|
@ -118,7 +118,7 @@ static void path_bit_lights_paint(
|
|||
|
||||
imageId |= pathBitImageFlags;
|
||||
|
||||
sub_98197C(session, imageId, 2, 16, 1, 1, 23, height, 3, 16, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 2, 16, 1, 1, 23, height, 3, 16, height + 2);
|
||||
}
|
||||
if (!(edges & EDGE_SE)) {
|
||||
imageId = pathBitEntry->image + 2;
|
||||
|
@ -128,7 +128,7 @@ static void path_bit_lights_paint(
|
|||
|
||||
imageId |= pathBitImageFlags;
|
||||
|
||||
sub_98197C(session, imageId, 16, 30, 1, 0, 23, height, 16, 29, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 16, 30, 1, 0, 23, height, 16, 29, height + 2);
|
||||
}
|
||||
|
||||
if (!(edges & EDGE_SW)) {
|
||||
|
@ -139,7 +139,7 @@ static void path_bit_lights_paint(
|
|||
|
||||
imageId |= pathBitImageFlags;
|
||||
|
||||
sub_98197C(session, imageId, 30, 16, 0, 1, 23, height, 29, 16, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 30, 16, 0, 1, 23, height, 29, 16, height + 2);
|
||||
}
|
||||
|
||||
if (!(edges & EDGE_NW)) {
|
||||
|
@ -150,7 +150,7 @@ static void path_bit_lights_paint(
|
|||
|
||||
imageId |= pathBitImageFlags;
|
||||
|
||||
sub_98197C(session, imageId, 16, 2, 1, 1, 23, height, 16, 3, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 16, 2, 1, 1, 23, height, 16, 3, height + 2);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -186,7 +186,7 @@ static void path_bit_bins_paint(
|
|||
}
|
||||
|
||||
if (!(gCurrentViewportFlags & VIEWPORT_FLAG_HIGHLIGHT_PATH_ISSUES) || binIsFull || binsAreVandalised)
|
||||
sub_98197C(session, imageId, 7, 16, 1, 1, 7, height, 7, 16, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 7, 16, 1, 1, 7, height, 7, 16, height + 2);
|
||||
}
|
||||
if (!(edges & EDGE_SE)) {
|
||||
imageId = pathBitEntry->image + 6;
|
||||
|
@ -205,7 +205,7 @@ static void path_bit_bins_paint(
|
|||
}
|
||||
|
||||
if (!(gCurrentViewportFlags & VIEWPORT_FLAG_HIGHLIGHT_PATH_ISSUES) || binIsFull || binsAreVandalised)
|
||||
sub_98197C(session, imageId, 16, 25, 1, 1, 7, height, 16, 25, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 16, 25, 1, 1, 7, height, 16, 25, height + 2);
|
||||
}
|
||||
|
||||
if (!(edges & EDGE_SW)) {
|
||||
|
@ -225,7 +225,7 @@ static void path_bit_bins_paint(
|
|||
}
|
||||
|
||||
if (!(gCurrentViewportFlags & VIEWPORT_FLAG_HIGHLIGHT_PATH_ISSUES) || binIsFull || binsAreVandalised)
|
||||
sub_98197C(session, imageId, 25, 16, 1, 1, 7, height, 25, 16, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 25, 16, 1, 1, 7, height, 25, 16, height + 2);
|
||||
}
|
||||
|
||||
if (!(edges & EDGE_NW)) {
|
||||
|
@ -245,7 +245,7 @@ static void path_bit_bins_paint(
|
|||
}
|
||||
|
||||
if (!(gCurrentViewportFlags & VIEWPORT_FLAG_HIGHLIGHT_PATH_ISSUES) || binIsFull || binsAreVandalised)
|
||||
sub_98197C(session, imageId, 16, 7, 1, 1, 7, height, 16, 7, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 16, 7, 1, 1, 7, height, 16, 7, height + 2);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -268,7 +268,7 @@ static void path_bit_benches_paint(
|
|||
|
||||
imageId |= pathBitImageFlags;
|
||||
|
||||
sub_98197C(session, imageId, 7, 16, 0, 16, 7, height, 6, 8, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 7, 16, 0, 16, 7, height, 6, 8, height + 2);
|
||||
}
|
||||
if (!(edges & EDGE_SE)) {
|
||||
imageId = pathBitEntry->image + 2;
|
||||
|
@ -278,7 +278,7 @@ static void path_bit_benches_paint(
|
|||
|
||||
imageId |= pathBitImageFlags;
|
||||
|
||||
sub_98197C(session, imageId, 16, 25, 16, 0, 7, height, 8, 23, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 16, 25, 16, 0, 7, height, 8, 23, height + 2);
|
||||
}
|
||||
|
||||
if (!(edges & EDGE_SW)) {
|
||||
|
@ -289,7 +289,7 @@ static void path_bit_benches_paint(
|
|||
|
||||
imageId |= pathBitImageFlags;
|
||||
|
||||
sub_98197C(session, imageId, 25, 16, 0, 16, 7, height, 23, 8, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 25, 16, 0, 16, 7, height, 23, 8, height + 2);
|
||||
}
|
||||
|
||||
if (!(edges & EDGE_NW)) {
|
||||
|
@ -300,7 +300,7 @@ static void path_bit_benches_paint(
|
|||
|
||||
imageId |= pathBitImageFlags;
|
||||
|
||||
sub_98197C(session, imageId, 16, 7, 16, 0, 7, height, 8, 6, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 16, 7, 16, 0, 7, height, 8, 6, height + 2);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -320,10 +320,10 @@ static void path_bit_jumping_fountains_paint(
|
|||
uint32 imageId = pathBitEntry->image;
|
||||
imageId |= pathBitImageFlags;
|
||||
|
||||
sub_98197C(session, imageId + 1, 0, 0, 1, 1, 2, height, 3, 3, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId + 2, 0, 0, 1, 1, 2, height, 3, 29, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId + 3, 0, 0, 1, 1, 2, height, 29, 29, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId + 4, 0, 0, 1, 1, 2, height, 29, 3, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId + 1, 0, 0, 1, 1, 2, height, 3, 3, height + 2);
|
||||
sub_98197C(session, imageId + 2, 0, 0, 1, 1, 2, height, 3, 29, height + 2);
|
||||
sub_98197C(session, imageId + 3, 0, 0, 1, 1, 2, height, 29, 29, height + 2);
|
||||
sub_98197C(session, imageId + 4, 0, 0, 1, 1, 2, height, 29, 3, height + 2);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -349,67 +349,71 @@ static void sub_6A4101(
|
|||
switch ((footpath_element_get_slope_direction(tile_element) + get_current_rotation()) & FOOTPATH_PROPERTIES_SLOPE_DIRECTION_MASK)
|
||||
{
|
||||
case 0:
|
||||
sub_98197C(session, 95 + base_image_id, 0, 4, 32, 1, 23, height, 0, 4, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 95 + base_image_id, 0, 28, 32, 1, 23, height, 0, 28, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 95 + base_image_id, 0, 4, 32, 1, 23, height, 0, 4, height + 2);
|
||||
sub_98197C(session, 95 + base_image_id, 0, 28, 32, 1, 23, height, 0, 28, height + 2);
|
||||
break;
|
||||
case 1:
|
||||
sub_98197C(session, 94 + base_image_id, 4, 0, 1, 32, 23, height, 4, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 94 + base_image_id, 28, 0, 1, 32, 23, height, 28, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 94 + base_image_id, 4, 0, 1, 32, 23, height, 4, 0, height + 2);
|
||||
sub_98197C(session, 94 + base_image_id, 28, 0, 1, 32, 23, height, 28, 0, height + 2);
|
||||
break;
|
||||
case 2:
|
||||
sub_98197C(session, 96 + base_image_id, 0, 4, 32, 1, 23, height, 0, 4, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 96 + base_image_id, 0, 28, 32, 1, 23, height, 0, 28, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 96 + base_image_id, 0, 4, 32, 1, 23, height, 0, 4, height + 2);
|
||||
sub_98197C(session, 96 + base_image_id, 0, 28, 32, 1, 23, height, 0, 28, height + 2);
|
||||
break;
|
||||
case 3:
|
||||
sub_98197C(session, 93 + base_image_id, 4, 0, 1, 32, 23, height, 4, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 93 + base_image_id, 28, 0, 1, 32, 23, height, 28, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 93 + base_image_id, 4, 0, 1, 32, 23, height, 4, 0, height + 2);
|
||||
sub_98197C(session, 93 + base_image_id, 28, 0, 1, 32, 23, height, 28, 0, height + 2);
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
switch (local_ebp) {
|
||||
case 1:
|
||||
sub_98197C(session, 90 + base_image_id, 0, 4, 28, 1, 7, height, 0, 4, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 90 + base_image_id, 0, 28, 28, 1, 7, height, 0, 28, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 90 + base_image_id, 0, 4, 28, 1, 7, height, 0, 4, height + 2);
|
||||
sub_98197C(session, 90 + base_image_id, 0, 28, 28, 1, 7, height, 0, 28, height + 2);
|
||||
break;
|
||||
case 2:
|
||||
sub_98197C(session, 91 + base_image_id, 4, 0, 1, 28, 7, height, 4, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 91 + base_image_id, 28, 0, 1, 28, 7, height, 28, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 91 + base_image_id, 4, 0, 1, 28, 7, height, 4, 0, height + 2);
|
||||
sub_98197C(session, 91 + base_image_id, 28, 0, 1, 28, 7, height, 28, 0, height + 2);
|
||||
break;
|
||||
case 3:
|
||||
sub_98197C(session, 90 + base_image_id, 0, 4, 28, 1, 7, height, 0, 4, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 91 + base_image_id, 28, 0, 1, 28, 7, height, 28, 4, height + 2, get_current_rotation()); // bound_box_offset_y seems to be a bug
|
||||
sub_98197C(session, 98 + base_image_id, 0, 0, 4, 4, 7, height, 0, 28, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 90 + base_image_id, 0, 4, 28, 1, 7, height, 0, 4, height + 2);
|
||||
sub_98197C(
|
||||
session, 91 + base_image_id, 28, 0, 1, 28, 7, height, 28, 4,
|
||||
height + 2); // bound_box_offset_y seems to be a bug
|
||||
sub_98197C(session, 98 + base_image_id, 0, 0, 4, 4, 7, height, 0, 28, height + 2);
|
||||
break;
|
||||
case 4:
|
||||
sub_98197C(session, 92 + base_image_id, 0, 4, 28, 1, 7, height, 0, 4, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 92 + base_image_id, 0, 28, 28, 1, 7, height, 0, 28, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 92 + base_image_id, 0, 4, 28, 1, 7, height, 0, 4, height + 2);
|
||||
sub_98197C(session, 92 + base_image_id, 0, 28, 28, 1, 7, height, 0, 28, height + 2);
|
||||
break;
|
||||
case 5:
|
||||
sub_98197C(session, 88 + base_image_id, 0, 4, 32, 1, 7, height, 0, 4, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 88 + base_image_id, 0, 28, 32, 1, 7, height, 0, 28, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 88 + base_image_id, 0, 4, 32, 1, 7, height, 0, 4, height + 2);
|
||||
sub_98197C(session, 88 + base_image_id, 0, 28, 32, 1, 7, height, 0, 28, height + 2);
|
||||
break;
|
||||
case 6:
|
||||
sub_98197C(session, 91 + base_image_id, 4, 0, 1, 28, 7, height, 4, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 92 + base_image_id, 0, 4, 28, 1, 7, height, 0, 4, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 99 + base_image_id, 0, 0, 4, 4, 7, height, 28, 28, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 91 + base_image_id, 4, 0, 1, 28, 7, height, 4, 0, height + 2);
|
||||
sub_98197C(session, 92 + base_image_id, 0, 4, 28, 1, 7, height, 0, 4, height + 2);
|
||||
sub_98197C(session, 99 + base_image_id, 0, 0, 4, 4, 7, height, 28, 28, height + 2);
|
||||
break;
|
||||
case 8:
|
||||
sub_98197C(session, 89 + base_image_id, 4, 0, 1, 28, 7, height, 4, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 89 + base_image_id, 28, 0, 1, 28, 7, height, 28, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 89 + base_image_id, 4, 0, 1, 28, 7, height, 4, 0, height + 2);
|
||||
sub_98197C(session, 89 + base_image_id, 28, 0, 1, 28, 7, height, 28, 0, height + 2);
|
||||
break;
|
||||
case 9:
|
||||
sub_98197C(session, 89 + base_image_id, 28, 0, 1, 28, 7, height, 28, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 90 + base_image_id, 0, 28, 28, 1, 7, height, 0, 28, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 97 + base_image_id, 0, 0, 4, 4, 7, height, 0, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 89 + base_image_id, 28, 0, 1, 28, 7, height, 28, 0, height + 2);
|
||||
sub_98197C(session, 90 + base_image_id, 0, 28, 28, 1, 7, height, 0, 28, height + 2);
|
||||
sub_98197C(session, 97 + base_image_id, 0, 0, 4, 4, 7, height, 0, 0, height + 2);
|
||||
break;
|
||||
case 10:
|
||||
sub_98197C(session, 87 + base_image_id, 4, 0, 1, 32, 7, height, 4, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 87 + base_image_id, 28, 0, 1, 32, 7, height, 28, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 87 + base_image_id, 4, 0, 1, 32, 7, height, 4, 0, height + 2);
|
||||
sub_98197C(session, 87 + base_image_id, 28, 0, 1, 32, 7, height, 28, 0, height + 2);
|
||||
break;
|
||||
case 12:
|
||||
sub_98197C(session, 89 + base_image_id, 4, 0, 1, 28, 7, height, 4, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 92 + base_image_id, 0, 28, 28, 1, 7, height, 4, 28, height + 2, get_current_rotation()); // bound_box_offset_x seems to be a bug
|
||||
sub_98197C(session, 100 + base_image_id, 0, 0, 4, 4, 7, height, 28, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 89 + base_image_id, 4, 0, 1, 28, 7, height, 4, 0, height + 2);
|
||||
sub_98197C(
|
||||
session, 92 + base_image_id, 0, 28, 28, 1, 7, height, 4, 28,
|
||||
height + 2); // bound_box_offset_x seems to be a bug
|
||||
sub_98197C(session, 100 + base_image_id, 0, 0, 4, 4, 7, height, 28, 0, height + 2);
|
||||
break;
|
||||
default:
|
||||
// purposely left empty
|
||||
|
@ -440,13 +444,13 @@ static void sub_6A4101(
|
|||
uint32 imageId = (direction << 1) + base_image_id + 101;
|
||||
|
||||
// Draw pole in the back
|
||||
sub_98197C(session, imageId, 0, 0, 1, 1, 21, height, boundBoxOffsets.x, boundBoxOffsets.y, boundBoxOffsets.z, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 1, 21, height, boundBoxOffsets.x, boundBoxOffsets.y, boundBoxOffsets.z);
|
||||
|
||||
// Draw pole in the front and banner
|
||||
boundBoxOffsets.x = BannerBoundBoxes[direction][1].x;
|
||||
boundBoxOffsets.y = BannerBoundBoxes[direction][1].y;
|
||||
imageId++;
|
||||
sub_98197C(session, imageId, 0, 0, 1, 1, 21, height, boundBoxOffsets.x, boundBoxOffsets.y, boundBoxOffsets.z, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 1, 21, height, boundBoxOffsets.x, boundBoxOffsets.y, boundBoxOffsets.z);
|
||||
|
||||
direction--;
|
||||
// If text shown
|
||||
|
@ -496,20 +500,20 @@ static void sub_6A4101(
|
|||
switch ((footpath_element_get_slope_direction(tile_element) + get_current_rotation()) & FOOTPATH_PROPERTIES_SLOPE_DIRECTION_MASK)
|
||||
{
|
||||
case 0:
|
||||
sub_98197C(session, 81 + base_image_id, 0, 4, 32, 1, 23, height, 0, 4, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 81 + base_image_id, 0, 28, 32, 1, 23, height, 0, 28, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 81 + base_image_id, 0, 4, 32, 1, 23, height, 0, 4, height + 2);
|
||||
sub_98197C(session, 81 + base_image_id, 0, 28, 32, 1, 23, height, 0, 28, height + 2);
|
||||
break;
|
||||
case 1:
|
||||
sub_98197C(session, 80 + base_image_id, 4, 0, 1, 32, 23, height, 4, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 80 + base_image_id, 28, 0, 1, 32, 23, height, 28, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 80 + base_image_id, 4, 0, 1, 32, 23, height, 4, 0, height + 2);
|
||||
sub_98197C(session, 80 + base_image_id, 28, 0, 1, 32, 23, height, 28, 0, height + 2);
|
||||
break;
|
||||
case 2:
|
||||
sub_98197C(session, 82 + base_image_id, 0, 4, 32, 1, 23, height, 0, 4, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 82 + base_image_id, 0, 28, 32, 1, 23, height, 0, 28, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 82 + base_image_id, 0, 4, 32, 1, 23, height, 0, 4, height + 2);
|
||||
sub_98197C(session, 82 + base_image_id, 0, 28, 32, 1, 23, height, 0, 28, height + 2);
|
||||
break;
|
||||
case 3:
|
||||
sub_98197C(session, 79 + base_image_id, 4, 0, 1, 32, 23, height, 4, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 79 + base_image_id, 28, 0, 1, 32, 23, height, 28, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 79 + base_image_id, 4, 0, 1, 32, 23, height, 4, 0, height + 2);
|
||||
sub_98197C(session, 79 + base_image_id, 28, 0, 1, 32, 23, height, 28, 0, height + 2);
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
|
@ -523,108 +527,112 @@ static void sub_6A4101(
|
|||
// purposely left empty
|
||||
break;
|
||||
case 1:
|
||||
sub_98197C(session, 76 + base_image_id, 0, 4, 28, 1, 7, height, 0, 4, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 76 + base_image_id, 0, 28, 28, 1, 7, height, 0, 28, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 76 + base_image_id, 0, 4, 28, 1, 7, height, 0, 4, height + 2);
|
||||
sub_98197C(session, 76 + base_image_id, 0, 28, 28, 1, 7, height, 0, 28, height + 2);
|
||||
break;
|
||||
case 2:
|
||||
sub_98197C(session, 77 + base_image_id, 4, 0, 1, 28, 7, height, 4, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 77 + base_image_id, 28, 0, 1, 28, 7, height, 28, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 77 + base_image_id, 4, 0, 1, 28, 7, height, 4, 0, height + 2);
|
||||
sub_98197C(session, 77 + base_image_id, 28, 0, 1, 28, 7, height, 28, 0, height + 2);
|
||||
break;
|
||||
case 4:
|
||||
sub_98197C(session, 78 + base_image_id, 0, 4, 28, 1, 7, height, 0, 4, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 78 + base_image_id, 0, 28, 28, 1, 7, height, 0, 28, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 78 + base_image_id, 0, 4, 28, 1, 7, height, 0, 4, height + 2);
|
||||
sub_98197C(session, 78 + base_image_id, 0, 28, 28, 1, 7, height, 0, 28, height + 2);
|
||||
break;
|
||||
case 5:
|
||||
sub_98197C(session, 74 + base_image_id, 0, 4, 32, 1, 7, height, 0, 4, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 74 + base_image_id, 0, 28, 32, 1, 7, height, 0, 28, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 74 + base_image_id, 0, 4, 32, 1, 7, height, 0, 4, height + 2);
|
||||
sub_98197C(session, 74 + base_image_id, 0, 28, 32, 1, 7, height, 0, 28, height + 2);
|
||||
break;
|
||||
case 8:
|
||||
sub_98197C(session, 75 + base_image_id, 4, 0, 1, 28, 7, height, 4, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 75 + base_image_id, 28, 0, 1, 28, 7, height, 28, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 75 + base_image_id, 4, 0, 1, 28, 7, height, 4, 0, height + 2);
|
||||
sub_98197C(session, 75 + base_image_id, 28, 0, 1, 28, 7, height, 28, 0, height + 2);
|
||||
break;
|
||||
case 10:
|
||||
sub_98197C(session, 73 + base_image_id, 4, 0, 1, 32, 7, height, 4, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 73 + base_image_id, 28, 0, 1, 32, 7, height, 28, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 73 + base_image_id, 4, 0, 1, 32, 7, height, 4, 0, height + 2);
|
||||
sub_98197C(session, 73 + base_image_id, 28, 0, 1, 32, 7, height, 28, 0, height + 2);
|
||||
break;
|
||||
|
||||
case 3:
|
||||
sub_98197C(session, 76 + base_image_id, 0, 4, 28, 1, 7, height, 0, 4, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 77 + base_image_id, 28, 0, 1, 28, 7, height, 28, 4, height + 2, get_current_rotation()); // bound_box_offset_y seems to be a bug
|
||||
sub_98197C(session, 76 + base_image_id, 0, 4, 28, 1, 7, height, 0, 4, height + 2);
|
||||
sub_98197C(
|
||||
session, 77 + base_image_id, 28, 0, 1, 28, 7, height, 28, 4,
|
||||
height + 2); // bound_box_offset_y seems to be a bug
|
||||
if (!(dword_F3EF80 & 0x10)) {
|
||||
sub_98197C(session, 84 + base_image_id, 0, 0, 4, 4, 7, height, 0, 28, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 84 + base_image_id, 0, 0, 4, 4, 7, height, 0, 28, height + 2);
|
||||
}
|
||||
break;
|
||||
case 6:
|
||||
sub_98197C(session, 77 + base_image_id, 4, 0, 1, 28, 7, height, 4, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 78 + base_image_id, 0, 4, 28, 1, 7, height, 0, 4, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 77 + base_image_id, 4, 0, 1, 28, 7, height, 4, 0, height + 2);
|
||||
sub_98197C(session, 78 + base_image_id, 0, 4, 28, 1, 7, height, 0, 4, height + 2);
|
||||
if (!(dword_F3EF80 & 0x20)) {
|
||||
sub_98197C(session, 85 + base_image_id, 0, 0, 4, 4, 7, height, 28, 28, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 85 + base_image_id, 0, 0, 4, 4, 7, height, 28, 28, height + 2);
|
||||
}
|
||||
break;
|
||||
case 9:
|
||||
sub_98197C(session, 75 + base_image_id, 28, 0, 1, 28, 7, height, 28, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 76 + base_image_id, 0, 28, 28, 1, 7, height, 0, 28, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 75 + base_image_id, 28, 0, 1, 28, 7, height, 28, 0, height + 2);
|
||||
sub_98197C(session, 76 + base_image_id, 0, 28, 28, 1, 7, height, 0, 28, height + 2);
|
||||
if (!(dword_F3EF80 & 0x80)) {
|
||||
sub_98197C(session, 83 + base_image_id, 0, 0, 4, 4, 7, height, 0, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 83 + base_image_id, 0, 0, 4, 4, 7, height, 0, 0, height + 2);
|
||||
}
|
||||
break;
|
||||
case 12:
|
||||
sub_98197C(session, 75 + base_image_id, 4, 0, 1, 28, 7, height, 4, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 78 + base_image_id, 0, 28, 28, 1, 7, height, 4, 28, height + 2, get_current_rotation()); // bound_box_offset_x seems to be a bug
|
||||
sub_98197C(session, 75 + base_image_id, 4, 0, 1, 28, 7, height, 4, 0, height + 2);
|
||||
sub_98197C(
|
||||
session, 78 + base_image_id, 0, 28, 28, 1, 7, height, 4, 28,
|
||||
height + 2); // bound_box_offset_x seems to be a bug
|
||||
if (!(dword_F3EF80 & 0x40)) {
|
||||
sub_98197C(session, 86 + base_image_id, 0, 0, 4, 4, 7, height, 28, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 86 + base_image_id, 0, 0, 4, 4, 7, height, 28, 0, height + 2);
|
||||
}
|
||||
break;
|
||||
|
||||
case 7:
|
||||
sub_98197C(session, 74 + base_image_id, 0, 4, 32, 1, 7, height, 0, 4, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 74 + base_image_id, 0, 4, 32, 1, 7, height, 0, 4, height + 2);
|
||||
if (!(dword_F3EF80 & 0x10)) {
|
||||
sub_98197C(session, 84 + base_image_id, 0, 0, 4, 4, 7, height, 0, 28, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 84 + base_image_id, 0, 0, 4, 4, 7, height, 0, 28, height + 2);
|
||||
}
|
||||
if (!(dword_F3EF80 & 0x20)) {
|
||||
sub_98197C(session, 85 + base_image_id, 0, 0, 4, 4, 7, height, 28, 28, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 85 + base_image_id, 0, 0, 4, 4, 7, height, 28, 28, height + 2);
|
||||
}
|
||||
break;
|
||||
case 13:
|
||||
sub_98197C(session, 74 + base_image_id, 0, 28, 32, 1, 7, height, 0, 28, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 74 + base_image_id, 0, 28, 32, 1, 7, height, 0, 28, height + 2);
|
||||
if (!(dword_F3EF80 & 0x40)) {
|
||||
sub_98197C(session, 86 + base_image_id, 0, 0, 4, 4, 7, height, 28, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 86 + base_image_id, 0, 0, 4, 4, 7, height, 28, 0, height + 2);
|
||||
}
|
||||
if (!(dword_F3EF80 & 0x80)) {
|
||||
sub_98197C(session, 83 + base_image_id, 0, 0, 4, 4, 7, height, 0, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 83 + base_image_id, 0, 0, 4, 4, 7, height, 0, 0, height + 2);
|
||||
}
|
||||
break;
|
||||
case 14:
|
||||
sub_98197C(session, 73 + base_image_id, 4, 0, 1, 32, 7, height, 4, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 73 + base_image_id, 4, 0, 1, 32, 7, height, 4, 0, height + 2);
|
||||
if (!(dword_F3EF80 & 0x20)) {
|
||||
sub_98197C(session, 85 + base_image_id, 0, 0, 4, 4, 7, height, 28, 28, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 85 + base_image_id, 0, 0, 4, 4, 7, height, 28, 28, height + 2);
|
||||
}
|
||||
if (!(dword_F3EF80 & 0x40)) {
|
||||
sub_98197C(session, 86 + base_image_id, 0, 0, 4, 4, 7, height, 28, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 86 + base_image_id, 0, 0, 4, 4, 7, height, 28, 0, height + 2);
|
||||
}
|
||||
break;
|
||||
case 11:
|
||||
sub_98197C(session, 73 + base_image_id, 28, 0, 1, 32, 7, height, 28, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 73 + base_image_id, 28, 0, 1, 32, 7, height, 28, 0, height + 2);
|
||||
if (!(dword_F3EF80 & 0x10)) {
|
||||
sub_98197C(session, 84 + base_image_id, 0, 0, 4, 4, 7, height, 0, 28, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 84 + base_image_id, 0, 0, 4, 4, 7, height, 0, 28, height + 2);
|
||||
}
|
||||
if (!(dword_F3EF80 & 0x80)) {
|
||||
sub_98197C(session, 83 + base_image_id, 0, 0, 4, 4, 7, height, 0, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 83 + base_image_id, 0, 0, 4, 4, 7, height, 0, 0, height + 2);
|
||||
}
|
||||
break;
|
||||
|
||||
case 15:
|
||||
if (!(dword_F3EF80 & 0x10)) {
|
||||
sub_98197C(session, 84 + base_image_id, 0, 0, 4, 4, 7, height, 0, 28, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 84 + base_image_id, 0, 0, 4, 4, 7, height, 0, 28, height + 2);
|
||||
}
|
||||
if (!(dword_F3EF80 & 0x20)) {
|
||||
sub_98197C(session, 85 + base_image_id, 0, 0, 4, 4, 7, height, 28, 28, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 85 + base_image_id, 0, 0, 4, 4, 7, height, 28, 28, height + 2);
|
||||
}
|
||||
if (!(dword_F3EF80 & 0x40)) {
|
||||
sub_98197C(session, 86 + base_image_id, 0, 0, 4, 4, 7, height, 28, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 86 + base_image_id, 0, 0, 4, 4, 7, height, 28, 0, height + 2);
|
||||
}
|
||||
if (!(dword_F3EF80 & 0x80)) {
|
||||
sub_98197C(session, 83 + base_image_id, 0, 0, 4, 4, 7, height, 0, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, 83 + base_image_id, 0, 0, 4, 4, 7, height, 0, 0, height + 2);
|
||||
}
|
||||
break;
|
||||
|
||||
|
@ -939,7 +947,9 @@ void path_paint_box_support(
|
|||
}
|
||||
|
||||
if (!hasFences || !session->DidPassSurface) {
|
||||
sub_98197C(session, imageId | imageFlags, 0, 0, boundBoxSize.x, boundBoxSize.y, 0, height, boundBoxOffset.x, boundBoxOffset.y, height + boundingBoxZOffset, get_current_rotation());
|
||||
sub_98197C(
|
||||
session, imageId | imageFlags, 0, 0, boundBoxSize.x, boundBoxSize.y, 0, height, boundBoxOffset.x, boundBoxOffset.y,
|
||||
height + boundingBoxZOffset);
|
||||
} else {
|
||||
uint32 image_id;
|
||||
if (footpath_element_is_sloped(tileElement)) {
|
||||
|
@ -948,7 +958,9 @@ void path_paint_box_support(
|
|||
image_id = byte_98D8A4[edges] + footpathEntry->bridge_image + 49;
|
||||
}
|
||||
|
||||
sub_98197C(session, image_id | imageFlags, 0, 0, boundBoxSize.x, boundBoxSize.y, 0, height, boundBoxOffset.x, boundBoxOffset.y, height + boundingBoxZOffset, get_current_rotation());
|
||||
sub_98197C(
|
||||
session, image_id | imageFlags, 0, 0, boundBoxSize.x, boundBoxSize.y, 0, height, boundBoxOffset.x, boundBoxOffset.y,
|
||||
height + boundingBoxZOffset);
|
||||
|
||||
if (!footpath_element_is_queue(tileElement) && !(footpathEntry->flags & FOOTPATH_ENTRY_FLAG_HAS_PATH_BASE_SPRITE)) {
|
||||
// don't draw
|
||||
|
@ -1073,7 +1085,9 @@ void path_paint_pole_support(
|
|||
}
|
||||
|
||||
if (!hasFences || !session->DidPassSurface) {
|
||||
sub_98197C(session, imageId | imageFlags, 0, 0, boundBoxSize.x, boundBoxSize.y, 0, height, boundBoxOffset.x, boundBoxOffset.y, height + boundingBoxZOffset, get_current_rotation());
|
||||
sub_98197C(
|
||||
session, imageId | imageFlags, 0, 0, boundBoxSize.x, boundBoxSize.y, 0, height, boundBoxOffset.x, boundBoxOffset.y,
|
||||
height + boundingBoxZOffset);
|
||||
}
|
||||
else {
|
||||
uint32 bridgeImage;
|
||||
|
@ -1085,7 +1099,9 @@ void path_paint_pole_support(
|
|||
bridgeImage |= imageFlags;
|
||||
}
|
||||
|
||||
sub_98197C(session, bridgeImage | imageFlags, 0, 0, boundBoxSize.x, boundBoxSize.y, 0, height, boundBoxOffset.x, boundBoxOffset.y, height + boundingBoxZOffset, get_current_rotation());
|
||||
sub_98197C(
|
||||
session, bridgeImage | imageFlags, 0, 0, boundBoxSize.x, boundBoxSize.y, 0, height, boundBoxOffset.x,
|
||||
boundBoxOffset.y, height + boundingBoxZOffset);
|
||||
|
||||
if (footpath_element_is_queue(tileElement) || (footpathEntry->flags & FOOTPATH_ENTRY_FLAG_HAS_PATH_BASE_SPRITE)) {
|
||||
sub_98199C(session, imageId | imageFlags, 0, 0, boundBoxSize.x, boundBoxSize.y, 0, height, boundBoxOffset.x, boundBoxOffset.y, height + boundingBoxZOffset, get_current_rotation());
|
||||
|
|
|
@ -147,7 +147,9 @@ void scenery_paint(paint_session * session, uint8 direction, sint32 height, cons
|
|||
baseImageid = (baseImageid & 0x7FFFF) | dword_F64EB0;
|
||||
}
|
||||
if (!(scenery_small_entry_has_flag(entry, SMALL_SCENERY_FLAG_VISIBLE_WHEN_ZOOMED))) {
|
||||
sub_98197C(session, baseImageid, x_offset, y_offset, boxlength.x, boxlength.y, boxlength.z - 1, height, boxoffset.x, boxoffset.y, boxoffset.z, rotation);
|
||||
sub_98197C(
|
||||
session, baseImageid, x_offset, y_offset, boxlength.x, boxlength.y, boxlength.z - 1, height, boxoffset.x,
|
||||
boxoffset.y, boxoffset.z);
|
||||
}
|
||||
|
||||
if (scenery_small_entry_has_flag(entry, SMALL_SCENERY_FLAG_HAS_GLASS)) {
|
||||
|
@ -270,7 +272,9 @@ void scenery_paint(paint_session * session, uint8 direction, sint32 height, cons
|
|||
image_id = (image_id & 0x7FFFF) | dword_F64EB0;
|
||||
}
|
||||
if (scenery_small_entry_has_flag(entry, SMALL_SCENERY_FLAG_VISIBLE_WHEN_ZOOMED)) {
|
||||
sub_98197C(session, image_id, x_offset, y_offset, boxlength.x, boxlength.y, boxlength.z - 1, height, boxoffset.x, boxoffset.y, boxoffset.z, rotation);
|
||||
sub_98197C(
|
||||
session, image_id, x_offset, y_offset, boxlength.x, boxlength.y, boxlength.z - 1, height, boxoffset.x,
|
||||
boxoffset.y, boxoffset.z);
|
||||
}
|
||||
else {
|
||||
sub_98199C(session, image_id, x_offset, y_offset, boxlength.x, boxlength.y, boxlength.z - 1, height, boxoffset.x, boxoffset.y, boxoffset.z, rotation);
|
||||
|
|
|
@ -645,7 +645,6 @@ static void viewport_surface_draw_tile_side_bottom(paint_session * session, enum
|
|||
base_image_id += 5;
|
||||
}
|
||||
|
||||
const uint8 rotation = get_current_rotation();
|
||||
uint8 curHeight = Math::Min(regs.ah, regs.ch);
|
||||
if (regs.ch != regs.ah)
|
||||
{
|
||||
|
@ -727,7 +726,9 @@ static void viewport_surface_draw_tile_side_bottom(paint_session * session, enum
|
|||
}
|
||||
|
||||
uint32 image_id = _terrainEdgeTunnelSpriteIds[edgeStyle][tunnelType] + (edge == EDGE_BOTTOMRIGHT ? 2 : 0);
|
||||
sub_98197C(session, image_id, offset.x, offset.y, tunnelBounds.x, tunnelBounds.y, boundBoxLength - 1, zOffset, 0, 0, boundBoxOffsetZ, rotation);
|
||||
sub_98197C(
|
||||
session, image_id, offset.x, offset.y, tunnelBounds.x, tunnelBounds.y, boundBoxLength - 1, zOffset, 0, 0,
|
||||
boundBoxOffsetZ);
|
||||
|
||||
boundBoxOffsetZ = curHeight * 16;
|
||||
boundBoxLength = stru_97B570[tunnelType][1] * 16;
|
||||
|
@ -739,7 +740,9 @@ static void viewport_surface_draw_tile_side_bottom(paint_session * session, enum
|
|||
}
|
||||
|
||||
image_id = _terrainEdgeTunnelSpriteIds[edgeStyle][tunnelType] + (edge == EDGE_BOTTOMRIGHT ? 2 : 0) + 1;
|
||||
sub_98197C(session, image_id, offset.x, offset.y, tunnelBounds.x, tunnelBounds.y, boundBoxLength - 1, curHeight * 16, tunnelTopBoundBoxOffset.x, tunnelTopBoundBoxOffset.y, boundBoxOffsetZ, rotation);
|
||||
sub_98197C(
|
||||
session, image_id, offset.x, offset.y, tunnelBounds.x, tunnelBounds.y, boundBoxLength - 1, curHeight * 16,
|
||||
tunnelTopBoundBoxOffset.x, tunnelTopBoundBoxOffset.y, boundBoxOffsetZ);
|
||||
|
||||
curHeight += stru_97B570[tunnelType][0];
|
||||
tunnelIndex++;
|
||||
|
@ -1009,10 +1012,10 @@ void surface_paint(paint_session * session, uint8 direction, uint16 height, cons
|
|||
if (session->VerticalTunnelHeight * 16 == height)
|
||||
{
|
||||
// Vertical tunnels
|
||||
sub_98197C(session, 1575, 0, 0, 1, 30, 39, height, -2, 1, height - 40, rotation);
|
||||
sub_98197C(session, 1576, 0, 0, 30, 1, 0, height, 1, 31, height, rotation);
|
||||
sub_98197C(session, 1577, 0, 0, 1, 30, 0, height, 31, 1, height, rotation);
|
||||
sub_98197C(session, 1578, 0, 0, 30, 1, 39, height, 1, -2, height - 40, rotation);
|
||||
sub_98197C(session, 1575, 0, 0, 1, 30, 39, height, -2, 1, height - 40);
|
||||
sub_98197C(session, 1576, 0, 0, 30, 1, 0, height, 1, 31, height);
|
||||
sub_98197C(session, 1577, 0, 0, 1, 30, 0, height, 31, 1, height);
|
||||
sub_98197C(session, 1578, 0, 0, 30, 1, 39, height, 1, -2, height - 40);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -1436,18 +1439,9 @@ void surface_paint(paint_session * session, uint8 direction, uint16 height, cons
|
|||
}
|
||||
}
|
||||
|
||||
sub_98197C(session,
|
||||
image_id,
|
||||
fenceData.offset.x,
|
||||
fenceData.offset.y,
|
||||
fenceData.box_size.x,
|
||||
fenceData.box_size.y,
|
||||
9,
|
||||
local_height,
|
||||
fenceData.box_offset.x,
|
||||
fenceData.box_offset.y,
|
||||
local_height + 1,
|
||||
rotation);
|
||||
sub_98197C(
|
||||
session, image_id, fenceData.offset.x, fenceData.offset.y, fenceData.box_size.x, fenceData.box_size.y, 9,
|
||||
local_height, fenceData.box_offset.x, fenceData.box_offset.y, local_height + 1);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -207,7 +207,7 @@ static void sub_68B3FB(paint_session * session, sint32 x, sint32 y)
|
|||
session->SpritePosition.y = y;
|
||||
session->InteractionType = VIEWPORT_INTERACTION_ITEM_NONE;
|
||||
|
||||
sub_98197C(session, imageId, 0, 0, 32, 32, -1, arrowZ, 0, 0, arrowZ + 18, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 32, 32, -1, arrowZ, 0, 0, arrowZ + 18);
|
||||
}
|
||||
sint32 bx = dx + 52;
|
||||
|
||||
|
@ -370,7 +370,9 @@ static void sub_68B3FB(paint_session * session, sint32 x, sint32 y)
|
|||
|
||||
sint32 xOffset = sy * 10;
|
||||
sint32 yOffset = -22 + sx * 10;
|
||||
paint_struct * ps = sub_98197C(session, 5504 | imageColourFlats, xOffset, yOffset, 10, 10, 1, segmentHeight, xOffset + 1, yOffset + 16, segmentHeight, get_current_rotation());
|
||||
paint_struct * ps = sub_98197C(
|
||||
session, 5504 | imageColourFlats, xOffset, yOffset, 10, 10, 1, segmentHeight, xOffset + 1, yOffset + 16,
|
||||
segmentHeight);
|
||||
if (ps != nullptr) {
|
||||
ps->flags &= PAINT_STRUCT_FLAG_IS_MASKED;
|
||||
ps->colour_image_id = COLOUR_BORDEAUX_RED;
|
||||
|
|
|
@ -254,7 +254,7 @@ void track_paint_util_paint_floor(paint_session * session, uint8 edges, uint32 c
|
|||
imageId = floorSprites[3];
|
||||
}
|
||||
|
||||
sub_98197C(session, imageId | colourFlags, 0, 0, 32, 32, 1, height, 0, 0, height, rotation);
|
||||
sub_98197C(session, imageId | colourFlags, 0, 0, 32, 32, 1, height, 0, 0, height);
|
||||
}
|
||||
|
||||
void track_paint_util_paint_fences(
|
||||
|
@ -283,12 +283,12 @@ void track_paint_util_paint_fences(
|
|||
if (edges & EDGE_SE && track_paint_util_has_fence(EDGE_SE, position, tileElement, ride, rotation))
|
||||
{
|
||||
imageId = fenceSprites[1] | colourFlags;
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 7, height, 0, 30, height + 2, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 7, height, 0, 30, height + 2);
|
||||
}
|
||||
if (edges & EDGE_SW && track_paint_util_has_fence(EDGE_SW, position, tileElement, ride, rotation))
|
||||
{
|
||||
imageId = fenceSprites[2] | colourFlags;
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 7, height, 30, 0, height + 2, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 7, height, 30, 0, height + 2);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -844,8 +844,9 @@ bool track_paint_util_draw_station_covers_2(paint_session * session, enum edge_t
|
|||
if (baseImageId & IMAGE_TYPE_TRANSPARENT)
|
||||
{
|
||||
imageId = (baseImageId & 0xBFFFFFFF) + imageOffset;
|
||||
sub_98197C(session, imageId, (sint8)offset.x, (sint8)offset.y, bounds.x, bounds.y, (sint8)bounds.z, offset.z,
|
||||
boundsOffset.x, boundsOffset.y, boundsOffset.z, get_current_rotation());
|
||||
sub_98197C(
|
||||
session, imageId, (sint8)offset.x, (sint8)offset.y, bounds.x, bounds.y, (sint8)bounds.z, offset.z, boundsOffset.x,
|
||||
boundsOffset.y, boundsOffset.z);
|
||||
|
||||
uint32 edi = session->TrackColours[SCHEME_TRACK] & (0b11111 << 19);
|
||||
|
||||
|
@ -857,8 +858,9 @@ bool track_paint_util_draw_station_covers_2(paint_session * session, enum edge_t
|
|||
}
|
||||
|
||||
imageId = (baseImageId + imageOffset) | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, (sint8)offset.x, (sint8)offset.y, bounds.x, bounds.y, (sint8)bounds.z, offset.z,
|
||||
boundsOffset.x, boundsOffset.y, boundsOffset.z, get_current_rotation());
|
||||
sub_98197C(
|
||||
session, imageId, (sint8)offset.x, (sint8)offset.y, bounds.x, bounds.y, (sint8)bounds.z, offset.z, boundsOffset.x,
|
||||
boundsOffset.y, boundsOffset.z);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -925,7 +927,7 @@ void track_paint_util_draw_pier(
|
|||
hasFence = track_paint_util_has_fence(EDGE_NE, position, tileElement, ride, get_current_rotation());
|
||||
imageId =
|
||||
(hasFence ? SPR_STATION_PIER_EDGE_NE_FENCED : SPR_STATION_PIER_EDGE_NE) | session->TrackColours[SCHEME_SUPPORTS];
|
||||
sub_98197C(session, imageId, 0, 0, 6, 32, 1, height, 2, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 6, 32, 1, height, 2, 0, height);
|
||||
track_paint_util_draw_station_covers(session, EDGE_NE, hasFence, entranceStyle, direction, height);
|
||||
|
||||
imageId = SPR_STATION_PIER_EDGE_SW | session->TrackColours[SCHEME_SUPPORTS];
|
||||
|
@ -944,7 +946,7 @@ void track_paint_util_draw_pier(
|
|||
hasFence = track_paint_util_has_fence(EDGE_NW, position, tileElement, ride, rotation);
|
||||
imageId =
|
||||
(hasFence ? SPR_STATION_PIER_EDGE_NW_FENCED : SPR_STATION_PIER_EDGE_NW) | session->TrackColours[SCHEME_SUPPORTS];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 6, 1, height, 0, 2, height, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 32, 6, 1, height, 0, 2, height);
|
||||
track_paint_util_draw_station_covers(session, EDGE_NW, hasFence, entranceStyle, direction, height);
|
||||
|
||||
imageId = SPR_STATION_PIER_EDGE_SE | session->TrackColours[SCHEME_SUPPORTS];
|
||||
|
@ -1051,8 +1053,9 @@ void track_paint_util_right_helix_up_small_quarter_tiles_paint(paint_session * s
|
|||
LocationXYZ16 boundsOffset = (boundsOffsets == nullptr ? LocationXYZ16{ offset.x, offset.y, 0 }
|
||||
: boundsOffsets[direction][index][0]);
|
||||
|
||||
sub_98197C(session, imageId, (sint8)offset.x, (sint8)offset.y, boundsLength.x, boundsLength.y, thickness[0], height,
|
||||
boundsOffset.x, boundsOffset.y, height + boundsOffset.z, rotation);
|
||||
sub_98197C(
|
||||
session, imageId, (sint8)offset.x, (sint8)offset.y, boundsLength.x, boundsLength.y, thickness[0], height,
|
||||
boundsOffset.x, boundsOffset.y, height + boundsOffset.z);
|
||||
}
|
||||
if (sprites[direction][index][1] != 0)
|
||||
{
|
||||
|
@ -1062,8 +1065,9 @@ void track_paint_util_right_helix_up_small_quarter_tiles_paint(paint_session * s
|
|||
LocationXYZ16 boundsOffset = (boundsOffsets == nullptr ? LocationXYZ16{ offset.x, offset.y, 0 }
|
||||
: boundsOffsets[direction][index][1]);
|
||||
|
||||
sub_98197C(session, imageId, (sint8)offset.x, (sint8)offset.y, boundsLength.x, boundsLength.y, thickness[1], height,
|
||||
boundsOffset.x, boundsOffset.y, height + boundsOffset.z, rotation);
|
||||
sub_98197C(
|
||||
session, imageId, (sint8)offset.x, (sint8)offset.y, boundsLength.x, boundsLength.y, thickness[1], height,
|
||||
boundsOffset.x, boundsOffset.y, height + boundsOffset.z);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1153,8 +1157,9 @@ void track_paint_util_right_helix_up_large_quarter_tiles_paint(paint_session * s
|
|||
LocationXYZ16 boundsOffset = (boundsOffsets == nullptr ? LocationXYZ16{ offset.x, offset.y, 0 }
|
||||
: boundsOffsets[direction][index][0]);
|
||||
|
||||
sub_98197C(session, imageId, (sint8)offset.x, (sint8)offset.y, boundsLength.x, boundsLength.y, thickness[0], height,
|
||||
boundsOffset.x, boundsOffset.y, height + boundsOffset.z, rotation);
|
||||
sub_98197C(
|
||||
session, imageId, (sint8)offset.x, (sint8)offset.y, boundsLength.x, boundsLength.y, thickness[0], height,
|
||||
boundsOffset.x, boundsOffset.y, height + boundsOffset.z);
|
||||
}
|
||||
if (sprites[direction][index][1] != 0)
|
||||
{
|
||||
|
@ -1164,8 +1169,9 @@ void track_paint_util_right_helix_up_large_quarter_tiles_paint(paint_session * s
|
|||
LocationXYZ16 boundsOffset = (boundsOffsets == nullptr ? LocationXYZ16{ offset.x, offset.y, 0 }
|
||||
: boundsOffsets[direction][index][1]);
|
||||
|
||||
sub_98197C(session, imageId, (sint8)offset.x, (sint8)offset.y, boundsLength.x, boundsLength.y, thickness[1], height,
|
||||
boundsOffset.x, boundsOffset.y, height + boundsOffset.z, rotation);
|
||||
sub_98197C(
|
||||
session, imageId, (sint8)offset.x, (sint8)offset.y, boundsLength.x, boundsLength.y, thickness[1], height,
|
||||
boundsOffset.x, boundsOffset.y, height + boundsOffset.z);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1327,8 +1333,9 @@ void track_paint_util_eighth_to_diag_tiles_paint(paint_session * session, const
|
|||
LocationXYZ16 boundsOffset =
|
||||
(boundsOffsets == nullptr ? LocationXYZ16{ offset.x, offset.y, 0 } : boundsOffsets[direction][index]);
|
||||
|
||||
sub_98197C(session, imageId, (sint8)offset.x, (sint8)offset.y, boundsLength.x, boundsLength.y, thickness[direction][index],
|
||||
height, boundsOffset.x, boundsOffset.y, height + boundsOffset.z, rotation);
|
||||
sub_98197C(
|
||||
session, imageId, (sint8)offset.x, (sint8)offset.y, boundsLength.x, boundsLength.y, thickness[direction][index], height,
|
||||
boundsOffset.x, boundsOffset.y, height + boundsOffset.z);
|
||||
}
|
||||
|
||||
const LocationXY16 defaultDiagTileOffsets[4] = {
|
||||
|
@ -1369,8 +1376,9 @@ void track_paint_util_diag_tiles_paint(paint_session * session, sint8 thickness,
|
|||
LocationXYZ16 boundsOffset =
|
||||
(boundsOffsets == nullptr ? LocationXYZ16{ offset.x, offset.y, 0 } : boundsOffsets[direction]);
|
||||
|
||||
sub_98197C(session, imageId, (sint8)offset.x, (sint8)offset.y, boundsLength.x, boundsLength.y, thickness, height,
|
||||
boundsOffset.x, boundsOffset.y, height + boundsOffset.z, rotation);
|
||||
sub_98197C(
|
||||
session, imageId, (sint8)offset.x, (sint8)offset.y, boundsLength.x, boundsLength.y, thickness, height, boundsOffset.x,
|
||||
boundsOffset.y, height + boundsOffset.z);
|
||||
}
|
||||
|
||||
const uint8 mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[] = { 6, 4, 5, 3, 1, 2, 0 };
|
||||
|
@ -1489,8 +1497,9 @@ void track_paint_util_right_quarter_turn_5_tiles_paint(paint_sessi
|
|||
LocationXYZ16 boundsOffset =
|
||||
(boundsOffsets == nullptr ? LocationXYZ16{ offset.x, offset.y, 0 } : boundsOffsets[direction][index]);
|
||||
|
||||
sub_98197C(session, imageId, (sint8)offset.x, (sint8)offset.y, boundsLength.x, boundsLength.y, thickness, height,
|
||||
boundsOffset.x, boundsOffset.y, height + boundsOffset.z, rotation);
|
||||
sub_98197C(
|
||||
session, imageId, (sint8)offset.x, (sint8)offset.y, boundsLength.x, boundsLength.y, thickness, height, boundsOffset.x,
|
||||
boundsOffset.y, height + boundsOffset.z);
|
||||
}
|
||||
|
||||
void track_paint_util_right_quarter_turn_5_tiles_paint_2(paint_session * session, sint16 height, sint32 direction,
|
||||
|
@ -1505,9 +1514,10 @@ void track_paint_util_right_quarter_turn_5_tiles_paint_2(paint_session * session
|
|||
|
||||
const sprite_bb * spriteBB = &sprites[direction][sprite];
|
||||
uint32 imageId = spriteBB->sprite_id | colourFlags;
|
||||
sub_98197C(session, imageId, (sint8)spriteBB->offset.x, (sint8)spriteBB->offset.y, spriteBB->bb_size.x, spriteBB->bb_size.y,
|
||||
(sint8)spriteBB->bb_size.z, height + spriteBB->offset.z, spriteBB->bb_offset.x, spriteBB->bb_offset.y,
|
||||
height + spriteBB->bb_offset.z, rotation);
|
||||
sub_98197C(
|
||||
session, imageId, (sint8)spriteBB->offset.x, (sint8)spriteBB->offset.y, spriteBB->bb_size.x, spriteBB->bb_size.y,
|
||||
(sint8)spriteBB->bb_size.z, height + spriteBB->offset.z, spriteBB->bb_offset.x, spriteBB->bb_offset.y,
|
||||
height + spriteBB->bb_offset.z);
|
||||
}
|
||||
|
||||
void track_paint_util_right_quarter_turn_5_tiles_paint_3(paint_session * session, sint16 height, sint32 direction,
|
||||
|
@ -1656,8 +1666,9 @@ void track_paint_util_right_quarter_turn_3_tiles_paint(paint_sessi
|
|||
LocationXYZ16 boundsOffset =
|
||||
(boundsOffsets == nullptr ? LocationXYZ16{ offset.x, offset.y, 0 } : boundsOffsets[direction][index]);
|
||||
|
||||
sub_98197C(session, imageId, (sint8)offset.x, (sint8)offset.y, boundsLength.x, boundsLength.y, thickness, height,
|
||||
boundsOffset.x, boundsOffset.y, height + boundsOffset.z, rotation);
|
||||
sub_98197C(
|
||||
session, imageId, (sint8)offset.x, (sint8)offset.y, boundsLength.x, boundsLength.y, thickness, height, boundsOffset.x,
|
||||
boundsOffset.y, height + boundsOffset.z);
|
||||
}
|
||||
|
||||
void track_paint_util_right_quarter_turn_3_tiles_paint_2(paint_session * session, sint8 thickness, sint16 height,
|
||||
|
@ -1688,13 +1699,13 @@ void track_paint_util_right_quarter_turn_3_tiles_paint_2_with_height_offset(pain
|
|||
switch (trackSequence)
|
||||
{
|
||||
case 0:
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, thickness, height, 0, 6, height + heightOffset, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, thickness, height, 0, 6, height + heightOffset);
|
||||
break;
|
||||
case 2:
|
||||
sub_98197C(session, imageId, 0, 0, 16, 16, thickness, height, 16, 16, height + heightOffset, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 16, 16, thickness, height, 16, 16, height + heightOffset);
|
||||
break;
|
||||
case 3:
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, thickness, height, 6, 0, height + heightOffset, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, thickness, height, 6, 0, height + heightOffset);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
@ -1703,13 +1714,13 @@ void track_paint_util_right_quarter_turn_3_tiles_paint_2_with_height_offset(pain
|
|||
switch (trackSequence)
|
||||
{
|
||||
case 0:
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, thickness, height, 6, 0, height + heightOffset, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, thickness, height, 6, 0, height + heightOffset);
|
||||
break;
|
||||
case 2:
|
||||
sub_98197C(session, imageId, 0, 0, 16, 16, thickness, height, 16, 0, height + heightOffset, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 16, 16, thickness, height, 16, 0, height + heightOffset);
|
||||
break;
|
||||
case 3:
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, thickness, height, 0, 6, height + heightOffset, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, thickness, height, 0, 6, height + heightOffset);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
@ -1718,13 +1729,13 @@ void track_paint_util_right_quarter_turn_3_tiles_paint_2_with_height_offset(pain
|
|||
switch (trackSequence)
|
||||
{
|
||||
case 0:
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, thickness, height, 0, 6, height + heightOffset, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, thickness, height, 0, 6, height + heightOffset);
|
||||
break;
|
||||
case 2:
|
||||
sub_98197C(session, imageId, 0, 0, 16, 16, thickness, height, 0, 0, height + heightOffset, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 16, 16, thickness, height, 0, 0, height + heightOffset);
|
||||
break;
|
||||
case 3:
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, thickness, height, 6, 0, height + heightOffset, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, thickness, height, 6, 0, height + heightOffset);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
@ -1733,13 +1744,13 @@ void track_paint_util_right_quarter_turn_3_tiles_paint_2_with_height_offset(pain
|
|||
switch (trackSequence)
|
||||
{
|
||||
case 0:
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, thickness, height, 6, 0, height + heightOffset, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, thickness, height, 6, 0, height + heightOffset);
|
||||
break;
|
||||
case 2:
|
||||
sub_98197C(session, imageId, 0, 0, 16, 16, thickness, height, 0, 16, height + heightOffset, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 16, 16, thickness, height, 0, 16, height + heightOffset);
|
||||
break;
|
||||
case 3:
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, thickness, height, 0, 6, height + heightOffset, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, thickness, height, 0, 6, height + heightOffset);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
@ -1756,9 +1767,10 @@ void track_paint_util_right_quarter_turn_3_tiles_paint_3(paint_session * session
|
|||
return;
|
||||
}
|
||||
const sprite_bb * spriteBB = &sprites[direction][sprite];
|
||||
sub_98197C(session, spriteBB->sprite_id | colourFlags, (sint8)spriteBB->offset.x, (sint8)spriteBB->offset.y,
|
||||
spriteBB->bb_size.x, spriteBB->bb_size.y, (sint8)spriteBB->bb_size.z, spriteBB->offset.z + height,
|
||||
spriteBB->bb_offset.x, spriteBB->bb_offset.y, height + spriteBB->bb_offset.z, rotation);
|
||||
sub_98197C(
|
||||
session, spriteBB->sprite_id | colourFlags, (sint8)spriteBB->offset.x, (sint8)spriteBB->offset.y, spriteBB->bb_size.x,
|
||||
spriteBB->bb_size.y, (sint8)spriteBB->bb_size.z, spriteBB->offset.z + height, spriteBB->bb_offset.x,
|
||||
spriteBB->bb_offset.y, height + spriteBB->bb_offset.z);
|
||||
}
|
||||
|
||||
void track_paint_util_right_quarter_turn_3_tiles_paint_4(paint_session * session, sint16 height, sint32 direction,
|
||||
|
@ -1872,13 +1884,13 @@ void track_paint_util_left_quarter_turn_3_tiles_paint_with_height_offset(paint_s
|
|||
switch (trackSequence)
|
||||
{
|
||||
case 0:
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, thickness, height, 0, 6, height + heightOffset, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, thickness, height, 0, 6, height + heightOffset);
|
||||
break;
|
||||
case 2:
|
||||
sub_98197C(session, imageId, 0, 0, 16, 16, thickness, height, 16, 0, height + heightOffset, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 16, 16, thickness, height, 16, 0, height + heightOffset);
|
||||
break;
|
||||
case 3:
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, thickness, height, 6, 0, height + heightOffset, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, thickness, height, 6, 0, height + heightOffset);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
@ -1887,13 +1899,13 @@ void track_paint_util_left_quarter_turn_3_tiles_paint_with_height_offset(paint_s
|
|||
switch (trackSequence)
|
||||
{
|
||||
case 0:
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, thickness, height, 6, 0, height + heightOffset, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, thickness, height, 6, 0, height + heightOffset);
|
||||
break;
|
||||
case 2:
|
||||
sub_98197C(session, imageId, 0, 0, 16, 16, thickness, height, 0, 0, height + heightOffset, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 16, 16, thickness, height, 0, 0, height + heightOffset);
|
||||
break;
|
||||
case 3:
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, thickness, height, 0, 6, height + heightOffset, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, thickness, height, 0, 6, height + heightOffset);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
@ -1902,13 +1914,13 @@ void track_paint_util_left_quarter_turn_3_tiles_paint_with_height_offset(paint_s
|
|||
switch (trackSequence)
|
||||
{
|
||||
case 0:
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, thickness, height, 0, 6, height + heightOffset, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, thickness, height, 0, 6, height + heightOffset);
|
||||
break;
|
||||
case 2:
|
||||
sub_98197C(session, imageId, 0, 0, 16, 16, thickness, height, 0, 16, height + heightOffset, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 16, 16, thickness, height, 0, 16, height + heightOffset);
|
||||
break;
|
||||
case 3:
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, thickness, height, 6, 0, height + heightOffset, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, thickness, height, 6, 0, height + heightOffset);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
@ -1917,13 +1929,13 @@ void track_paint_util_left_quarter_turn_3_tiles_paint_with_height_offset(paint_s
|
|||
switch (trackSequence)
|
||||
{
|
||||
case 0:
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, thickness, height, 6, 0, height + heightOffset, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, thickness, height, 6, 0, height + heightOffset);
|
||||
break;
|
||||
case 2:
|
||||
sub_98197C(session, imageId, 0, 0, 16, 16, thickness, height, 16, 16, height + heightOffset, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 16, 16, thickness, height, 16, 16, height + heightOffset);
|
||||
break;
|
||||
case 3:
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, thickness, height, 0, 6, height + heightOffset, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, thickness, height, 0, 6, height + heightOffset);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
@ -1981,16 +1993,16 @@ void track_paint_util_left_quarter_turn_1_tile_paint(paint_session * session, si
|
|||
switch (direction)
|
||||
{
|
||||
case 0:
|
||||
sub_98197C(session, imageId, 0, 0, 26, 24, thickness, height, 6, 2, height + boundBoxZOffset, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 26, 24, thickness, height, 6, 2, height + boundBoxZOffset);
|
||||
break;
|
||||
case 1:
|
||||
sub_98197C(session, imageId, 0, 0, 26, 26, thickness, height, 0, 0, height + boundBoxZOffset, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 26, 26, thickness, height, 0, 0, height + boundBoxZOffset);
|
||||
break;
|
||||
case 2:
|
||||
sub_98197C(session, imageId, 0, 0, 24, 26, thickness, height, 2, 6, height + boundBoxZOffset, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 24, 26, thickness, height, 2, 6, height + boundBoxZOffset);
|
||||
break;
|
||||
case 3:
|
||||
sub_98197C(session, imageId, 0, 0, 24, 24, thickness, height, 6, 6, height + boundBoxZOffset, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 24, 24, thickness, height, 6, 6, height + boundBoxZOffset);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -2046,11 +2058,11 @@ void track_paint_util_spinning_tunnel_paint(paint_session * session, sint8 thick
|
|||
imageId = trackSpritesGhostTrainSpinningTunnel[direction & 1][1][frame] | colourFlags;
|
||||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 26, 1, 23, height, 4, 28, height, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 26, 1, 23, height, 4, 28, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 1, 26, 23, height, 28, 4, height, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 1, 26, 23, height, 28, 4, height);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2213,7 +2225,7 @@ void track_paint(paint_session * session, uint8 direction, sint32 height, const
|
|||
uint32 ebx = 0x20381689 + (height + 8) / 16;
|
||||
ebx += get_height_marker_offset();
|
||||
ebx -= gMapBaseZ;
|
||||
sub_98197C(session, ebx, 16, 16, 1, 1, 0, height + ax + 3, 1000, 1000, 2047, get_current_rotation());
|
||||
sub_98197C(session, ebx, 16, 16, 1, 1, 0, height + ax + 3, 1000, 1000, 2047);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -915,8 +915,8 @@ static void vehicle_sprite_paint(paint_session * session, rct_vehicle * vehicle,
|
|||
uint32 rotation = get_current_rotation();
|
||||
sint32 image_id =
|
||||
baseImage_id | (vehicle->colours.body_colour << 19) | (vehicle->colours.trim_colour << 24) | IMAGE_TYPE_REMAP_2_PLUS;
|
||||
paint_struct * ps = sub_98197C(session, image_id, 0, 0, bb.length_x, bb.length_y, bb.length_z, z, bb.offset_x, bb.offset_y,
|
||||
bb.offset_z + z, rotation);
|
||||
paint_struct * ps = sub_98197C(
|
||||
session, image_id, 0, 0, bb.length_x, bb.length_y, bb.length_z, z, bb.offset_x, bb.offset_y, bb.offset_z + z);
|
||||
if (ps != nullptr)
|
||||
{
|
||||
ps->tertiary_colour = vehicle->colours_extended;
|
||||
|
@ -3042,7 +3042,7 @@ void vehicle_paint(paint_session * session, rct_vehicle * vehicle, sint32 imageD
|
|||
if (vehicle->flags & SPRITE_FLAGS_IS_CRASHED_VEHICLE_SPRITE)
|
||||
{
|
||||
uint32 ebx = 22965 + vehicle->animation_frame;
|
||||
sub_98197C(session, ebx, 0, 0, 1, 1, 0, z, 0, 0, z + 2, get_current_rotation());
|
||||
sub_98197C(session, ebx, 0, 0, 1, 1, 0, z, 0, 0, z + 2);
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
|
@ -471,13 +471,13 @@ static void air_powered_vertical_rc_track_banked_right_quarter_turn_5(
|
|||
{
|
||||
uint32 imageId =
|
||||
SPR_AIR_POWERED_VERTICAL_RC_BANKED_QUARTER_TURN_5_FRONT_NW_SW_PART_4 | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 26, height, 0, 27, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 26, height, 0, 27, height);
|
||||
}
|
||||
else if (direction == 3 && trackSequence == 0)
|
||||
{
|
||||
uint32 imageId =
|
||||
SPR_AIR_POWERED_VERTICAL_RC_BANKED_QUARTER_TURN_5_FRONT_SE_NE_PART_0 | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 26, height, 27, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 26, height, 27, 0, height);
|
||||
}
|
||||
|
||||
track_paint_util_right_quarter_turn_5_tiles_wooden_supports(session, height, direction, trackSequence);
|
||||
|
@ -783,7 +783,7 @@ static void air_powered_vertical_rc_track_vertical_slope_up(
|
|||
{
|
||||
floorImageId = SPR_FLOOR_PLANKS | session->TrackColours[SCHEME_SUPPORTS];
|
||||
}
|
||||
sub_98197C(session, floorImageId, 0, 0, 26, 26, 126, height, 3, 3, height, get_current_rotation());
|
||||
sub_98197C(session, floorImageId, 0, 0, 26, 26, 126, height, 3, 3, height);
|
||||
sub_98199C_rotated(session, direction, supportsImageId, 0, 0, 26, 26, 126, height, 3, 3, height);
|
||||
}
|
||||
else
|
||||
|
|
|
@ -1665,7 +1665,7 @@ void junior_rc_paint_station(
|
|||
{
|
||||
// height -= 2 (height - 2)
|
||||
imageId = SPR_STATION_BASE_B_SW_NE | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 28, 1, height - 2, 0, 2, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 28, 1, height - 2, 0, 2, height);
|
||||
|
||||
// height += 2 (height)
|
||||
if (track_element_get_type(tileElement) == TRACK_ELEM_END_STATION && rideType == RIDE_TYPE_JUNIOR_ROLLER_COASTER)
|
||||
|
@ -1687,7 +1687,7 @@ void junior_rc_paint_station(
|
|||
{
|
||||
// height -= 2 (height - 2)
|
||||
imageId = SPR_STATION_BASE_B_NW_SE | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, 0, 0, 28, 32, 1, height - 2, 2, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 28, 32, 1, height - 2, 2, 0, height);
|
||||
|
||||
// height += 2 (height)
|
||||
if (track_element_get_type(tileElement) == TRACK_ELEM_END_STATION && rideType == RIDE_TYPE_JUNIOR_ROLLER_COASTER)
|
||||
|
@ -1932,13 +1932,13 @@ static void junior_rc_flat_to_left_bank_paint_setup(
|
|||
image_id = junior_rc_track_pieces_flat_to_left_bank[direction][0] | session->TrackColours[SCHEME_TRACK];
|
||||
if (direction & 1)
|
||||
{
|
||||
sub_98197C(session, image_id, 0, 0, 20, 32, 1, height, 6, 0, height, get_current_rotation());
|
||||
sub_98197C(session, image_id, 0, 0, 20, 32, 1, height, 6, 0, height);
|
||||
|
||||
paint_util_push_tunnel_right(session, height, 0);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, image_id, 0, 0, 32, 20, 1, height, 0, 6, height, get_current_rotation());
|
||||
sub_98197C(session, image_id, 0, 0, 32, 20, 1, height, 0, 6, height);
|
||||
|
||||
paint_util_push_tunnel_left(session, height, 0);
|
||||
}
|
||||
|
@ -1949,11 +1949,11 @@ static void junior_rc_flat_to_left_bank_paint_setup(
|
|||
|
||||
if (direction & 1)
|
||||
{
|
||||
sub_98197C(session, image_id, 0, 0, 1, 32, 26, height, 27, 0, height, get_current_rotation());
|
||||
sub_98197C(session, image_id, 0, 0, 1, 32, 26, height, 27, 0, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, image_id, 0, 0, 32, 1, 26, height, 0, 27, height, get_current_rotation());
|
||||
sub_98197C(session, image_id, 0, 0, 32, 1, 26, height, 0, 27, height);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1985,13 +1985,13 @@ static void junior_rc_flat_to_right_bank_paint_setup(
|
|||
image_id = junior_rc_track_pieces_flat_to_right_bank[direction][0] | session->TrackColours[SCHEME_TRACK];
|
||||
if (direction & 1)
|
||||
{
|
||||
sub_98197C(session, image_id, 0, 0, 20, 32, 1, height, 6, 0, height, get_current_rotation());
|
||||
sub_98197C(session, image_id, 0, 0, 20, 32, 1, height, 6, 0, height);
|
||||
|
||||
paint_util_push_tunnel_right(session, height, 0);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, image_id, 0, 0, 32, 20, 1, height, 0, 6, height, get_current_rotation());
|
||||
sub_98197C(session, image_id, 0, 0, 32, 20, 1, height, 0, 6, height);
|
||||
|
||||
paint_util_push_tunnel_left(session, height, 0);
|
||||
}
|
||||
|
@ -2002,11 +2002,11 @@ static void junior_rc_flat_to_right_bank_paint_setup(
|
|||
|
||||
if (direction & 1)
|
||||
{
|
||||
sub_98197C(session, image_id, 0, 0, 1, 32, 26, height, 27, 0, height, get_current_rotation());
|
||||
sub_98197C(session, image_id, 0, 0, 1, 32, 26, height, 27, 0, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, image_id, 0, 0, 32, 1, 26, height, 0, 27, height, get_current_rotation());
|
||||
sub_98197C(session, image_id, 0, 0, 32, 1, 26, height, 0, 27, height);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2124,12 +2124,12 @@ static void junior_rc_banked_right_quarter_turn_5_tiles_paint_setup(
|
|||
if (direction == 1 && trackSequence == 6)
|
||||
{
|
||||
uint32 imageId = SPR_JUNIOR_RC_BANKED_QUARTER_TURN_5_TILES_NW_SW_PART_4_2 | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 26, height, 0, 27, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 26, height, 0, 27, height);
|
||||
}
|
||||
else if (direction == 3 && trackSequence == 0)
|
||||
{
|
||||
uint32 imageId = SPR_JUNIOR_RC_BANKED_QUARTER_TURN_5_TILES_SE_NE_PART_0_2 | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 26, height, 27, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 26, height, 27, 0, height);
|
||||
}
|
||||
|
||||
sint32 supportHeight = height;
|
||||
|
@ -2226,11 +2226,11 @@ static void junior_rc_left_bank_to_25_deg_up_paint_setup(
|
|||
image_id = junior_rc_track_pieces_left_banked_to_25_deg_up[direction][0] | session->TrackColours[SCHEME_TRACK];
|
||||
if (direction & 1)
|
||||
{
|
||||
sub_98197C(session, image_id, 0, 0, 20, 32, 1, height, 6, 0, height, get_current_rotation());
|
||||
sub_98197C(session, image_id, 0, 0, 20, 32, 1, height, 6, 0, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, image_id, 0, 0, 32, 20, 1, height, 0, 6, height, get_current_rotation());
|
||||
sub_98197C(session, image_id, 0, 0, 32, 20, 1, height, 0, 6, height);
|
||||
}
|
||||
|
||||
if (junior_rc_track_pieces_left_banked_to_25_deg_up[direction][1] != 0)
|
||||
|
@ -2239,11 +2239,11 @@ static void junior_rc_left_bank_to_25_deg_up_paint_setup(
|
|||
|
||||
if (direction & 1)
|
||||
{
|
||||
sub_98197C(session, image_id, 0, 0, 1, 32, 34, height, 27, 0, height, get_current_rotation());
|
||||
sub_98197C(session, image_id, 0, 0, 1, 32, 34, height, 27, 0, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, image_id, 0, 0, 32, 1, 34, height, 0, 27, height, get_current_rotation());
|
||||
sub_98197C(session, image_id, 0, 0, 32, 1, 34, height, 0, 27, height);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2291,11 +2291,11 @@ static void junior_rc_right_bank_to_25_deg_up_paint_setup(
|
|||
image_id = junior_rc_track_pieces_right_banked_to_25_deg_up[direction][0] | session->TrackColours[SCHEME_TRACK];
|
||||
if (direction & 1)
|
||||
{
|
||||
sub_98197C(session, image_id, 0, 0, 20, 32, 1, height, 6, 0, height, get_current_rotation());
|
||||
sub_98197C(session, image_id, 0, 0, 20, 32, 1, height, 6, 0, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, image_id, 0, 0, 32, 20, 1, height, 0, 6, height, get_current_rotation());
|
||||
sub_98197C(session, image_id, 0, 0, 32, 20, 1, height, 0, 6, height);
|
||||
}
|
||||
|
||||
if (junior_rc_track_pieces_right_banked_to_25_deg_up[direction][1] != 0)
|
||||
|
@ -2304,11 +2304,11 @@ static void junior_rc_right_bank_to_25_deg_up_paint_setup(
|
|||
|
||||
if (direction & 1)
|
||||
{
|
||||
sub_98197C(session, image_id, 0, 0, 1, 32, 34, height, 27, 0, height, get_current_rotation());
|
||||
sub_98197C(session, image_id, 0, 0, 1, 32, 34, height, 27, 0, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, image_id, 0, 0, 32, 1, 34, height, 0, 27, height, get_current_rotation());
|
||||
sub_98197C(session, image_id, 0, 0, 32, 1, 34, height, 0, 27, height);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2369,13 +2369,13 @@ static void junior_rc_25_deg_up_to_left_bank_paint_setup(
|
|||
image_id = junior_rc_track_pieces_25_deg_up_to_left_bank[direction][0] | session->TrackColours[SCHEME_TRACK];
|
||||
if (direction & 1)
|
||||
{
|
||||
sub_98197C(session, image_id, 0, 0, 20, 32, 1, height, 6, 0, height, get_current_rotation());
|
||||
sub_98197C(session, image_id, 0, 0, 20, 32, 1, height, 6, 0, height);
|
||||
|
||||
paint_util_push_tunnel_right(session, tunnelHeight, tunnelType);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, image_id, 0, 0, 32, 20, 1, height, 0, 6, height, get_current_rotation());
|
||||
sub_98197C(session, image_id, 0, 0, 32, 20, 1, height, 0, 6, height);
|
||||
|
||||
paint_util_push_tunnel_left(session, tunnelHeight, tunnelType);
|
||||
}
|
||||
|
@ -2386,11 +2386,11 @@ static void junior_rc_25_deg_up_to_left_bank_paint_setup(
|
|||
|
||||
if (direction & 1)
|
||||
{
|
||||
sub_98197C(session, image_id, 0, 0, 1, 32, 34, height, 27, 0, height, get_current_rotation());
|
||||
sub_98197C(session, image_id, 0, 0, 1, 32, 34, height, 27, 0, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, image_id, 0, 0, 32, 1, 34, height, 0, 27, height, get_current_rotation());
|
||||
sub_98197C(session, image_id, 0, 0, 32, 1, 34, height, 0, 27, height);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2435,13 +2435,13 @@ static void junior_rc_25_deg_up_to_right_bank_paint_setup(
|
|||
image_id = junior_rc_track_pieces_25_deg_up_to_right_bank[direction][0] | session->TrackColours[SCHEME_TRACK];
|
||||
if (direction & 1)
|
||||
{
|
||||
sub_98197C(session, image_id, 0, 0, 20, 32, 1, height, 6, 0, height, get_current_rotation());
|
||||
sub_98197C(session, image_id, 0, 0, 20, 32, 1, height, 6, 0, height);
|
||||
|
||||
paint_util_push_tunnel_right(session, tunnelHeight, tunnelType);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, image_id, 0, 0, 32, 20, 1, height, 0, 6, height, get_current_rotation());
|
||||
sub_98197C(session, image_id, 0, 0, 32, 20, 1, height, 0, 6, height);
|
||||
|
||||
paint_util_push_tunnel_left(session, tunnelHeight, tunnelType);
|
||||
}
|
||||
|
@ -2452,11 +2452,11 @@ static void junior_rc_25_deg_up_to_right_bank_paint_setup(
|
|||
|
||||
if (direction & 1)
|
||||
{
|
||||
sub_98197C(session, image_id, 0, 0, 1, 32, 34, height, 27, 0, height, get_current_rotation());
|
||||
sub_98197C(session, image_id, 0, 0, 1, 32, 34, height, 27, 0, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, image_id, 0, 0, 32, 1, 34, height, 0, 27, height, get_current_rotation());
|
||||
sub_98197C(session, image_id, 0, 0, 32, 1, 34, height, 0, 27, height);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2556,10 +2556,10 @@ static void junior_rc_left_bank_paint_setup(
|
|||
uint32 image_id;
|
||||
|
||||
image_id = junior_rc_track_pieces_left_bank[direction] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, image_id, 0, 0, junior_rc_left_bank_bound_lengths[direction].x,
|
||||
junior_rc_left_bank_bound_lengths[direction].y, (sint8)junior_rc_left_bank_bound_lengths[direction].z, height,
|
||||
junior_rc_left_bank_bound_offsets[direction].x, junior_rc_left_bank_bound_offsets[direction].y, height,
|
||||
get_current_rotation());
|
||||
sub_98197C(
|
||||
session, image_id, 0, 0, junior_rc_left_bank_bound_lengths[direction].x, junior_rc_left_bank_bound_lengths[direction].y,
|
||||
(sint8)junior_rc_left_bank_bound_lengths[direction].z, height, junior_rc_left_bank_bound_offsets[direction].x,
|
||||
junior_rc_left_bank_bound_offsets[direction].y, height);
|
||||
|
||||
if (direction & 1)
|
||||
{
|
||||
|
@ -3147,12 +3147,12 @@ static void junior_rc_right_quarter_turn_3_tiles_bank_paint_setup(
|
|||
if (direction == 1 && trackSequence == 3)
|
||||
{
|
||||
uint32 imageId = SPR_JUNIOR_RC_BANKED_QUARTER_TURN_3_TILES_NW_SW_PART_2_2 | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 26, height, 0, 27, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 26, height, 0, 27, height);
|
||||
}
|
||||
else if (direction == 3 && trackSequence == 0)
|
||||
{
|
||||
uint32 imageId = SPR_JUNIOR_RC_BANKED_QUARTER_TURN_3_TILES_SE_NE_PART_0_2 | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 26, height, 27, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 26, height, 27, 0, height);
|
||||
}
|
||||
|
||||
uint8 supportType[2][4] = { { 1, 0, 0, 2 }, { 2, 0, 0, 1 } };
|
||||
|
@ -3215,8 +3215,9 @@ void junior_rc_paint_track_right_quarter_turn_3_tiles_25_deg_up(
|
|||
break;
|
||||
}
|
||||
if (imageId != 0)
|
||||
sub_98197C(session, imageId, (sint8)offset.x, (sint8)offset.y, boundsLength.x, boundsLength.y, 1, height,
|
||||
boundsOffset.x, boundsOffset.y, height, get_current_rotation());
|
||||
sub_98197C(
|
||||
session, imageId, (sint8)offset.x, (sint8)offset.y, boundsLength.x, boundsLength.y, 1, height, boundsOffset.x,
|
||||
boundsOffset.y, height);
|
||||
|
||||
if (direction == 0 && trackSequence == 0)
|
||||
{
|
||||
|
@ -3298,8 +3299,9 @@ void junior_rc_paint_track_right_quarter_turn_3_tiles_25_deg_down(
|
|||
break;
|
||||
}
|
||||
if (imageId != 0)
|
||||
sub_98197C(session, imageId, (sint8)offset.x, (sint8)offset.y, boundsLength.x, boundsLength.y, 1, height,
|
||||
boundsOffset.x, boundsOffset.y, height, get_current_rotation());
|
||||
sub_98197C(
|
||||
session, imageId, (sint8)offset.x, (sint8)offset.y, boundsLength.x, boundsLength.y, 1, height, boundsOffset.x,
|
||||
boundsOffset.y, height);
|
||||
|
||||
if (direction == 0 && trackSequence == 0)
|
||||
{
|
||||
|
@ -4835,7 +4837,7 @@ static void junior_rc_diag_flat_to_left_bank_paint_setup(
|
|||
{
|
||||
uint32 imageId = SPR_JUNIOR_RC_DIAG_FLAT_TO_LEFT_BANK_W_E_PART_0_2 | session->TrackColours[SCHEME_TRACK];
|
||||
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 0, height, -16, -16, height + 27, get_current_rotation());
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 0, height, -16, -16, height + 27);
|
||||
}
|
||||
if (trackSequence == 3)
|
||||
{
|
||||
|
@ -4866,7 +4868,7 @@ static void junior_rc_diag_flat_to_right_bank_paint_setup(
|
|||
{
|
||||
uint32 imageId = SPR_JUNIOR_RC_DIAG_FLAT_TO_RIGHT_BANK_E_W_PART_0_2 | session->TrackColours[SCHEME_TRACK];
|
||||
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 0, height, -16, -16, height + 27, get_current_rotation());
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 0, height, -16, -16, height + 27);
|
||||
}
|
||||
if (trackSequence == 3)
|
||||
{
|
||||
|
@ -4897,7 +4899,7 @@ static void junior_rc_diag_left_bank_to_flat_paint_setup(
|
|||
{
|
||||
uint32 imageId = SPR_JUNIOR_RC_DIAG_FLAT_TO_RIGHT_BANK_E_W_PART_0_2 | session->TrackColours[SCHEME_TRACK];
|
||||
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 0, height, -16, -16, height + 27, get_current_rotation());
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 0, height, -16, -16, height + 27);
|
||||
}
|
||||
if (trackSequence == 3)
|
||||
{
|
||||
|
@ -4928,7 +4930,7 @@ static void junior_rc_diag_right_bank_to_flat_paint_setup(
|
|||
{
|
||||
uint32 imageId = SPR_JUNIOR_RC_DIAG_FLAT_TO_LEFT_BANK_W_E_PART_0_2 | session->TrackColours[SCHEME_TRACK];
|
||||
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 0, height, -16, -16, height + 27, get_current_rotation());
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 0, height, -16, -16, height + 27);
|
||||
}
|
||||
if (trackSequence == 3)
|
||||
{
|
||||
|
@ -4959,7 +4961,7 @@ static void junior_rc_diag_left_bank_to_25_deg_up_paint_setup(
|
|||
{
|
||||
uint32 imageId = SPR_JUNIOR_RC_DIAG_LEFT_BANK_TO_25_DEG_UP_W_E_PART_0_2 | session->TrackColours[SCHEME_TRACK];
|
||||
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 0, height, -16, -16, height + 35, get_current_rotation());
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 0, height, -16, -16, height + 35);
|
||||
}
|
||||
if (trackSequence == 3)
|
||||
{
|
||||
|
@ -4989,7 +4991,7 @@ static void junior_rc_diag_right_bank_to_25_deg_up_paint_setup(
|
|||
{
|
||||
uint32 imageId = SPR_JUNIOR_RC_DIAG_RIGHT_BANK_TO_25_DEG_UP_E_W_PART_0_2 | session->TrackColours[SCHEME_TRACK];
|
||||
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 0, height, -16, -16, height + 35, get_current_rotation());
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 0, height, -16, -16, height + 35);
|
||||
}
|
||||
if (trackSequence == 3)
|
||||
{
|
||||
|
@ -5019,7 +5021,7 @@ static void junior_rc_diag_25_deg_up_to_left_bank_paint_setup(
|
|||
{
|
||||
uint32 imageId = SPR_JUNIOR_RC_DIAG_25_DEG_UP_TO_LEFT_BANK_W_E_PART_0_2 | session->TrackColours[SCHEME_TRACK];
|
||||
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 0, height, -16, -16, height + 35, get_current_rotation());
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 0, height, -16, -16, height + 35);
|
||||
}
|
||||
if (trackSequence == 3)
|
||||
{
|
||||
|
@ -5049,7 +5051,7 @@ static void junior_rc_diag_25_deg_up_to_right_bank_paint_setup(
|
|||
{
|
||||
uint32 imageId = SPR_JUNIOR_RC_DIAG_25_DEG_UP_TO_RIGHT_BANK_E_W_PART_0_2 | session->TrackColours[SCHEME_TRACK];
|
||||
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 0, height, -16, -16, height + 35, get_current_rotation());
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 0, height, -16, -16, height + 35);
|
||||
}
|
||||
if (trackSequence == 3)
|
||||
{
|
||||
|
@ -5079,7 +5081,7 @@ static void junior_rc_diag_left_bank_to_25_deg_down_paint_setup(
|
|||
{
|
||||
uint32 imageId = SPR_JUNIOR_RC_DIAG_25_DEG_UP_TO_RIGHT_BANK_E_W_PART_0_2 | session->TrackColours[SCHEME_TRACK];
|
||||
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 0, height, -16, -16, height + 35, get_current_rotation());
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 0, height, -16, -16, height + 35);
|
||||
}
|
||||
if (trackSequence == 3)
|
||||
{
|
||||
|
@ -5109,7 +5111,7 @@ static void junior_rc_diag_right_bank_to_25_deg_down_paint_setup(
|
|||
{
|
||||
uint32 imageId = SPR_JUNIOR_RC_DIAG_25_DEG_UP_TO_LEFT_BANK_W_E_PART_0_2 | session->TrackColours[SCHEME_TRACK];
|
||||
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 0, height, -16, -16, height + 35, get_current_rotation());
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 0, height, -16, -16, height + 35);
|
||||
}
|
||||
if (trackSequence == 3)
|
||||
{
|
||||
|
@ -5139,7 +5141,7 @@ static void junior_rc_diag_25_deg_down_to_left_bank_paint_setup(
|
|||
{
|
||||
uint32 imageId = SPR_JUNIOR_RC_DIAG_RIGHT_BANK_TO_25_DEG_UP_E_W_PART_0_2 | session->TrackColours[SCHEME_TRACK];
|
||||
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 0, height, -16, -16, height + 35, get_current_rotation());
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 0, height, -16, -16, height + 35);
|
||||
}
|
||||
if (trackSequence == 3)
|
||||
{
|
||||
|
@ -5169,7 +5171,7 @@ static void junior_rc_diag_25_deg_down_to_right_bank_paint_setup(
|
|||
{
|
||||
uint32 imageId = SPR_JUNIOR_RC_DIAG_LEFT_BANK_TO_25_DEG_UP_W_E_PART_0_2 | session->TrackColours[SCHEME_TRACK];
|
||||
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 0, height, -16, -16, height + 35, get_current_rotation());
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 0, height, -16, -16, height + 35);
|
||||
}
|
||||
if (trackSequence == 3)
|
||||
{
|
||||
|
@ -5284,11 +5286,11 @@ void junior_rc_paint_track_60_deg_up(
|
|||
|
||||
image_id |= junior_rc_track_pieces_60_deg_up[chainType][direction];
|
||||
|
||||
sub_98197C(session, image_id, (sint8)junior_rc_60_deg_up_tile_offsets[direction].x,
|
||||
(sint8)junior_rc_60_deg_up_tile_offsets[direction].y, junior_rc_60_deg_up_bound_lengths[direction].x,
|
||||
junior_rc_60_deg_up_bound_lengths[direction].y, junior_rc_60_deg_up_bound_thickness[direction], height,
|
||||
junior_rc_60_deg_up_bound_offsets[direction].x, junior_rc_60_deg_up_bound_offsets[direction].y, height,
|
||||
get_current_rotation());
|
||||
sub_98197C(
|
||||
session, image_id, (sint8)junior_rc_60_deg_up_tile_offsets[direction].x,
|
||||
(sint8)junior_rc_60_deg_up_tile_offsets[direction].y, junior_rc_60_deg_up_bound_lengths[direction].x,
|
||||
junior_rc_60_deg_up_bound_lengths[direction].y, junior_rc_60_deg_up_bound_thickness[direction], height,
|
||||
junior_rc_60_deg_up_bound_offsets[direction].x, junior_rc_60_deg_up_bound_offsets[direction].y, height);
|
||||
|
||||
switch (direction)
|
||||
{
|
||||
|
@ -5373,13 +5375,13 @@ void junior_rc_paint_track_25_deg_up_to_60_deg_up(
|
|||
|
||||
image_id |= junior_rc_track_pieces_25_deg_up_to_60_deg_up[chainType][direction][0];
|
||||
|
||||
sub_98197C(session, image_id, (sint8)junior_rc_60_deg_up_tile_offsets[direction].x,
|
||||
(sint8)junior_rc_60_deg_up_tile_offsets[direction].y,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_lengths[direction][0].x,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_lengths[direction][0].y,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_thickness[direction], height,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_offsets[direction][0].x,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_offsets[direction][0].y, height, get_current_rotation());
|
||||
sub_98197C(
|
||||
session, image_id, (sint8)junior_rc_60_deg_up_tile_offsets[direction].x,
|
||||
(sint8)junior_rc_60_deg_up_tile_offsets[direction].y, junior_rc_25_deg_up_to_60_deg_up_bound_lengths[direction][0].x,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_lengths[direction][0].y,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_thickness[direction], height,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_offsets[direction][0].x,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_offsets[direction][0].y, height);
|
||||
|
||||
if (junior_rc_track_pieces_25_deg_up_to_60_deg_up[chainType][direction][1] != 0)
|
||||
{
|
||||
|
@ -5387,13 +5389,14 @@ void junior_rc_paint_track_25_deg_up_to_60_deg_up(
|
|||
|
||||
image_id |= junior_rc_track_pieces_25_deg_up_to_60_deg_up[chainType][direction][1];
|
||||
|
||||
sub_98197C(session, image_id, (sint8)junior_rc_60_deg_up_tile_offsets[direction].x,
|
||||
(sint8)junior_rc_60_deg_up_tile_offsets[direction].y,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_lengths[direction][1].x,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_lengths[direction][1].y,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_thickness[direction], height,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_offsets[direction][1].x,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_offsets[direction][1].y, height, get_current_rotation());
|
||||
sub_98197C(
|
||||
session, image_id, (sint8)junior_rc_60_deg_up_tile_offsets[direction].x,
|
||||
(sint8)junior_rc_60_deg_up_tile_offsets[direction].y,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_lengths[direction][1].x,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_lengths[direction][1].y,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_thickness[direction], height,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_offsets[direction][1].x,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_offsets[direction][1].y, height);
|
||||
}
|
||||
|
||||
switch (direction)
|
||||
|
@ -5463,13 +5466,13 @@ void junior_rc_paint_track_60_deg_up_to_25_deg_up(
|
|||
|
||||
image_id |= junior_rc_track_pieces_60_deg_up_to_25_deg_up[chainType][direction][0];
|
||||
|
||||
sub_98197C(session, image_id, (sint8)junior_rc_60_deg_up_tile_offsets[direction].x,
|
||||
(sint8)junior_rc_60_deg_up_tile_offsets[direction].y,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_lengths[direction][0].x,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_lengths[direction][0].y,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_thickness[direction], height,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_offsets[direction][0].x,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_offsets[direction][0].y, height, get_current_rotation());
|
||||
sub_98197C(
|
||||
session, image_id, (sint8)junior_rc_60_deg_up_tile_offsets[direction].x,
|
||||
(sint8)junior_rc_60_deg_up_tile_offsets[direction].y, junior_rc_25_deg_up_to_60_deg_up_bound_lengths[direction][0].x,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_lengths[direction][0].y,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_thickness[direction], height,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_offsets[direction][0].x,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_offsets[direction][0].y, height);
|
||||
|
||||
if (junior_rc_track_pieces_60_deg_up_to_25_deg_up[chainType][direction][1] != 0)
|
||||
{
|
||||
|
@ -5477,13 +5480,14 @@ void junior_rc_paint_track_60_deg_up_to_25_deg_up(
|
|||
|
||||
image_id |= junior_rc_track_pieces_60_deg_up_to_25_deg_up[chainType][direction][1];
|
||||
|
||||
sub_98197C(session, image_id, (sint8)junior_rc_60_deg_up_tile_offsets[direction].x,
|
||||
(sint8)junior_rc_60_deg_up_tile_offsets[direction].y,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_lengths[direction][1].x,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_lengths[direction][1].y,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_thickness[direction], height,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_offsets[direction][1].x,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_offsets[direction][1].y, height, get_current_rotation());
|
||||
sub_98197C(
|
||||
session, image_id, (sint8)junior_rc_60_deg_up_tile_offsets[direction].x,
|
||||
(sint8)junior_rc_60_deg_up_tile_offsets[direction].y,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_lengths[direction][1].x,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_lengths[direction][1].y,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_thickness[direction], height,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_offsets[direction][1].x,
|
||||
junior_rc_25_deg_up_to_60_deg_up_bound_offsets[direction][1].y, height);
|
||||
}
|
||||
|
||||
switch (direction)
|
||||
|
@ -5622,10 +5626,10 @@ void junior_rc_paint_track_diag_60_deg_up_to_25_deg_up(
|
|||
{
|
||||
if (direction == 1 && trackSequence == 3)
|
||||
{
|
||||
sub_98197C(session,
|
||||
junior_rc_track_pieces_diag_60_deg_up_to_25_deg_up[chainType][direction] |
|
||||
session->TrackColours[SCHEME_TRACK],
|
||||
-16, -16, 16, 16, 1, height, 0, 0, height, get_current_rotation());
|
||||
sub_98197C(
|
||||
session,
|
||||
junior_rc_track_pieces_diag_60_deg_up_to_25_deg_up[chainType][direction] | session->TrackColours[SCHEME_TRACK], -16,
|
||||
-16, 16, 16, 1, height, 0, 0, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -5656,10 +5660,10 @@ void junior_rc_paint_track_diag_25_deg_down_to_60_deg_down(
|
|||
{
|
||||
if (direction == 3 && trackSequence == 0)
|
||||
{
|
||||
sub_98197C(session,
|
||||
junior_rc_track_pieces_diag_25_deg_down_to_60_deg_down[chainType][direction] |
|
||||
session->TrackColours[SCHEME_TRACK],
|
||||
-16, -16, 16, 16, 1, height, 0, 0, height, get_current_rotation());
|
||||
sub_98197C(
|
||||
session,
|
||||
junior_rc_track_pieces_diag_25_deg_down_to_60_deg_down[chainType][direction] | session->TrackColours[SCHEME_TRACK],
|
||||
-16, -16, 16, 16, 1, height, 0, 0, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -5819,13 +5823,13 @@ static void junior_rc_flat_to_60_deg_up_paint_setup(
|
|||
|
||||
image_id |= junior_rc_track_pieces_flat_to_60_deg_up[isChained][direction][0];
|
||||
|
||||
sub_98197C(session, image_id, (sint8)junior_rc_flat_to_60_deg_up_tile_offsets[direction][0].x,
|
||||
(sint8)junior_rc_flat_to_60_deg_up_tile_offsets[direction][0].y,
|
||||
junior_rc_flat_to_60_deg_up_bound_lengths[direction][0].x,
|
||||
junior_rc_flat_to_60_deg_up_bound_lengths[direction][0].y,
|
||||
junior_rc_flat_to_60_deg_up_bound_thickness[direction], height + 24,
|
||||
junior_rc_flat_to_60_deg_up_bound_offsets[direction][0].x,
|
||||
junior_rc_flat_to_60_deg_up_bound_offsets[direction][0].y, height, get_current_rotation());
|
||||
sub_98197C(
|
||||
session, image_id, (sint8)junior_rc_flat_to_60_deg_up_tile_offsets[direction][0].x,
|
||||
(sint8)junior_rc_flat_to_60_deg_up_tile_offsets[direction][0].y,
|
||||
junior_rc_flat_to_60_deg_up_bound_lengths[direction][0].x, junior_rc_flat_to_60_deg_up_bound_lengths[direction][0].y,
|
||||
junior_rc_flat_to_60_deg_up_bound_thickness[direction], height + 24,
|
||||
junior_rc_flat_to_60_deg_up_bound_offsets[direction][0].x, junior_rc_flat_to_60_deg_up_bound_offsets[direction][0].y,
|
||||
height);
|
||||
|
||||
if (junior_rc_track_pieces_flat_to_60_deg_up[isChained][direction][1] != 0)
|
||||
{
|
||||
|
@ -5833,13 +5837,13 @@ static void junior_rc_flat_to_60_deg_up_paint_setup(
|
|||
|
||||
image_id |= junior_rc_track_pieces_flat_to_60_deg_up[isChained][direction][1];
|
||||
|
||||
sub_98197C(session, image_id, (sint8)junior_rc_flat_to_60_deg_up_tile_offsets[direction][1].x,
|
||||
(sint8)junior_rc_flat_to_60_deg_up_tile_offsets[direction][1].y,
|
||||
junior_rc_flat_to_60_deg_up_bound_lengths[direction][1].x,
|
||||
junior_rc_flat_to_60_deg_up_bound_lengths[direction][1].y,
|
||||
junior_rc_flat_to_60_deg_up_bound_thickness[direction], height,
|
||||
junior_rc_flat_to_60_deg_up_bound_offsets[direction][1].x,
|
||||
junior_rc_flat_to_60_deg_up_bound_offsets[direction][1].y, height, get_current_rotation());
|
||||
sub_98197C(
|
||||
session, image_id, (sint8)junior_rc_flat_to_60_deg_up_tile_offsets[direction][1].x,
|
||||
(sint8)junior_rc_flat_to_60_deg_up_tile_offsets[direction][1].y,
|
||||
junior_rc_flat_to_60_deg_up_bound_lengths[direction][1].x,
|
||||
junior_rc_flat_to_60_deg_up_bound_lengths[direction][1].y, junior_rc_flat_to_60_deg_up_bound_thickness[direction],
|
||||
height, junior_rc_flat_to_60_deg_up_bound_offsets[direction][1].x,
|
||||
junior_rc_flat_to_60_deg_up_bound_offsets[direction][1].y, height);
|
||||
}
|
||||
|
||||
switch (direction)
|
||||
|
@ -5898,13 +5902,13 @@ static void junior_rc_60_deg_up_to_flat_paint_setup(
|
|||
|
||||
image_id |= junior_rc_track_pieces_60_deg_up_to_flat[isChained][direction][0];
|
||||
|
||||
sub_98197C(session, image_id, (sint8)junior_rc_60_deg_up_to_flat_tile_offsets[direction][0].x,
|
||||
(sint8)junior_rc_60_deg_up_to_flat_tile_offsets[direction][0].y,
|
||||
junior_rc_flat_to_60_deg_up_bound_lengths[direction][0].x,
|
||||
junior_rc_flat_to_60_deg_up_bound_lengths[direction][0].y,
|
||||
junior_rc_flat_to_60_deg_up_bound_thickness[direction], height + 24,
|
||||
junior_rc_flat_to_60_deg_up_bound_offsets[direction][0].x,
|
||||
junior_rc_flat_to_60_deg_up_bound_offsets[direction][0].y, height, get_current_rotation());
|
||||
sub_98197C(
|
||||
session, image_id, (sint8)junior_rc_60_deg_up_to_flat_tile_offsets[direction][0].x,
|
||||
(sint8)junior_rc_60_deg_up_to_flat_tile_offsets[direction][0].y,
|
||||
junior_rc_flat_to_60_deg_up_bound_lengths[direction][0].x, junior_rc_flat_to_60_deg_up_bound_lengths[direction][0].y,
|
||||
junior_rc_flat_to_60_deg_up_bound_thickness[direction], height + 24,
|
||||
junior_rc_flat_to_60_deg_up_bound_offsets[direction][0].x, junior_rc_flat_to_60_deg_up_bound_offsets[direction][0].y,
|
||||
height);
|
||||
|
||||
if (junior_rc_track_pieces_60_deg_up_to_flat[isChained][direction][1] != 0)
|
||||
{
|
||||
|
@ -5912,13 +5916,13 @@ static void junior_rc_60_deg_up_to_flat_paint_setup(
|
|||
|
||||
image_id |= junior_rc_track_pieces_60_deg_up_to_flat[isChained][direction][1];
|
||||
|
||||
sub_98197C(session, image_id, (sint8)junior_rc_60_deg_up_to_flat_tile_offsets[direction][1].x,
|
||||
(sint8)junior_rc_60_deg_up_to_flat_tile_offsets[direction][1].y,
|
||||
junior_rc_flat_to_60_deg_up_bound_lengths[direction][1].x,
|
||||
junior_rc_flat_to_60_deg_up_bound_lengths[direction][1].y,
|
||||
junior_rc_flat_to_60_deg_up_bound_thickness[direction], height,
|
||||
junior_rc_flat_to_60_deg_up_bound_offsets[direction][1].x,
|
||||
junior_rc_flat_to_60_deg_up_bound_offsets[direction][1].y, height, get_current_rotation());
|
||||
sub_98197C(
|
||||
session, image_id, (sint8)junior_rc_60_deg_up_to_flat_tile_offsets[direction][1].x,
|
||||
(sint8)junior_rc_60_deg_up_to_flat_tile_offsets[direction][1].y,
|
||||
junior_rc_flat_to_60_deg_up_bound_lengths[direction][1].x,
|
||||
junior_rc_flat_to_60_deg_up_bound_lengths[direction][1].y, junior_rc_flat_to_60_deg_up_bound_thickness[direction],
|
||||
height, junior_rc_flat_to_60_deg_up_bound_offsets[direction][1].x,
|
||||
junior_rc_flat_to_60_deg_up_bound_offsets[direction][1].y, height);
|
||||
}
|
||||
|
||||
switch (direction)
|
||||
|
|
|
@ -211,13 +211,13 @@ static void paint_reverse_freefall_rc_flat(
|
|||
if (direction & 1)
|
||||
{
|
||||
uint32 imageId = SPR_REVERSE_FREEFALL_RC_FLAT_NW_SE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 1, height, 6, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 1, height, 6, 0, height);
|
||||
paint_util_push_tunnel_right(session, height, TUNNEL_6);
|
||||
}
|
||||
else
|
||||
{
|
||||
uint32 imageId = SPR_REVERSE_FREEFALL_RC_FLAT_SW_NE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 1, height, 0, 6, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 1, height, 0, 6, height);
|
||||
paint_util_push_tunnel_left(session, height, TUNNEL_6);
|
||||
}
|
||||
|
||||
|
@ -241,7 +241,7 @@ static void paint_reverse_freefall_rc_station(
|
|||
{
|
||||
// height -= 2 (height - 2)
|
||||
imageId = SPR_STATION_BASE_B_SW_NE | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 28, 1, height - 2, 0, 2, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 28, 1, height - 2, 0, 2, height);
|
||||
// height += 2 (height)
|
||||
|
||||
imageId = reverse_freefall_rc_track_pieces_station[direction] | session->TrackColours[SCHEME_TRACK];
|
||||
|
@ -255,7 +255,7 @@ static void paint_reverse_freefall_rc_station(
|
|||
{
|
||||
// height -= 2 (height - 2)
|
||||
imageId = SPR_STATION_BASE_B_NW_SE | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, 0, 0, 28, 32, 1, height - 2, 2, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 28, 32, 1, height - 2, 2, 0, height);
|
||||
// height += 2 (height)
|
||||
|
||||
imageId = reverse_freefall_rc_track_pieces_station[direction] | session->TrackColours[SCHEME_TRACK];
|
||||
|
@ -339,7 +339,7 @@ static void paint_reverse_freefall_rc_slope(
|
|||
{
|
||||
floorImageId = SPR_FLOOR_PLANKS | session->TrackColours[SCHEME_SUPPORTS];
|
||||
}
|
||||
sub_98197C(session, floorImageId, 0, 0, 26, 26, 126, height, 3, 3, height, get_current_rotation());
|
||||
sub_98197C(session, floorImageId, 0, 0, 26, 26, 126, height, 3, 3, height);
|
||||
sub_98199C_rotated(session, direction, supportsImageId, 0, 0, isDirection03 ? 26 : 18, 26, 126, height,
|
||||
isDirection03 ? 3 : 11, 3, height);
|
||||
}
|
||||
|
@ -383,7 +383,7 @@ static void paint_reverse_freefall_rc_vertical(
|
|||
case 0:
|
||||
supportsImageId =
|
||||
reverse_freefall_rc_track_pieces_vertical_supports[direction] | session->TrackColours[SCHEME_SUPPORTS];
|
||||
sub_98197C(session, supportsImageId, 0, 0, 26, 26, 79, height, 3, 3, height, get_current_rotation());
|
||||
sub_98197C(session, supportsImageId, 0, 0, 26, 26, 79, height, 3, 3, height);
|
||||
paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0);
|
||||
paint_util_set_general_support_height(session, height + 80, 0x20);
|
||||
break;
|
||||
|
|
|
@ -203,8 +203,8 @@ void vehicle_visual_virginia_reel(paint_session * session, sint32 x, sint32 imag
|
|||
|
||||
const vehicle_boundbox * bb = &_virginiaReelBoundbox[j];
|
||||
image_id = baseImage_id | SPRITE_ID_PALETTE_COLOUR_2(vehicle->colours.body_colour, vehicle->colours.trim_colour);
|
||||
sub_98197C(session, image_id, 0, 0, bb->length_x, bb->length_y, bb->length_z, z, bb->offset_x, bb->offset_y,
|
||||
bb->offset_z + z, rotation);
|
||||
sub_98197C(
|
||||
session, image_id, 0, 0, bb->length_x, bb->length_y, bb->length_z, z, bb->offset_x, bb->offset_y, bb->offset_z + z);
|
||||
|
||||
if (session->Unk140E9A8->zoom_level < 2 && vehicle->num_peeps > 0)
|
||||
{
|
||||
|
@ -247,12 +247,12 @@ static void paint_virginia_reel_track_flat(
|
|||
uint32 imageId = sprites[direction] | session->TrackColours[SCHEME_TRACK];
|
||||
if (direction & 1)
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 27, 32, 2, height, 2, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 27, 32, 2, height, 2, 0, height);
|
||||
paint_util_push_tunnel_right(session, height, TUNNEL_6);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 32, 27, 2, height, 0, 2, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 27, 2, height, 0, 2, height);
|
||||
paint_util_push_tunnel_left(session, height, TUNNEL_6);
|
||||
}
|
||||
|
||||
|
@ -282,11 +282,11 @@ static void paint_virginia_reel_track_25_deg_up(
|
|||
|
||||
if (direction & 1)
|
||||
{
|
||||
ps = sub_98197C(session, imageId, 0, 0, 27, 32, 2, height, 2, 0, height, get_current_rotation());
|
||||
ps = sub_98197C(session, imageId, 0, 0, 27, 32, 2, height, 2, 0, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
ps = sub_98197C(session, imageId, 0, 0, 32, 27, 2, height, 0, 2, height, get_current_rotation());
|
||||
ps = sub_98197C(session, imageId, 0, 0, 32, 27, 2, height, 0, 2, height);
|
||||
}
|
||||
|
||||
if (direction == 1 || direction == 2)
|
||||
|
@ -338,27 +338,27 @@ static void paint_virginia_reel_track_flat_to_25_deg_up(
|
|||
switch (direction)
|
||||
{
|
||||
case 0:
|
||||
sub_98197C(session, imageId, 0, 0, 32, 27, 2, height, 0, 2, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 27, 2, height, 0, 2, height);
|
||||
|
||||
wooden_a_supports_paint_setup(session, 0, 1, height, session->TrackColours[SCHEME_SUPPORTS], nullptr);
|
||||
paint_util_push_tunnel_left(session, height, TUNNEL_6);
|
||||
break;
|
||||
case 1:
|
||||
ps = sub_98197C(session, imageId, 0, 0, 27, 32, 2, height, 2, 0, height, get_current_rotation());
|
||||
ps = sub_98197C(session, imageId, 0, 0, 27, 32, 2, height, 2, 0, height);
|
||||
session->WoodenSupportsPrependTo = ps;
|
||||
|
||||
wooden_a_supports_paint_setup(session, 1, 2, height, session->TrackColours[SCHEME_SUPPORTS], nullptr);
|
||||
paint_util_push_tunnel_right(session, height, TUNNEL_8);
|
||||
break;
|
||||
case 2:
|
||||
ps = sub_98197C(session, imageId, 0, 0, 32, 27, 2, height, 0, 2, height, get_current_rotation());
|
||||
ps = sub_98197C(session, imageId, 0, 0, 32, 27, 2, height, 0, 2, height);
|
||||
session->WoodenSupportsPrependTo = ps;
|
||||
|
||||
wooden_a_supports_paint_setup(session, 0, 3, height, session->TrackColours[SCHEME_SUPPORTS], nullptr);
|
||||
paint_util_push_tunnel_left(session, height, TUNNEL_8);
|
||||
break;
|
||||
case 3:
|
||||
sub_98197C(session, imageId, 0, 0, 27, 32, 2, height, 2, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 27, 32, 2, height, 2, 0, height);
|
||||
|
||||
wooden_a_supports_paint_setup(session, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS], nullptr);
|
||||
paint_util_push_tunnel_right(session, height, TUNNEL_6);
|
||||
|
@ -389,11 +389,11 @@ static void paint_virginia_reel_track_25_deg_up_to_flat(
|
|||
|
||||
if (direction & 1)
|
||||
{
|
||||
ps = sub_98197C(session, imageId, 0, 0, 27, 32, 2, height, 2, 0, height, get_current_rotation());
|
||||
ps = sub_98197C(session, imageId, 0, 0, 27, 32, 2, height, 2, 0, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
ps = sub_98197C(session, imageId, 0, 0, 32, 27, 2, height, 0, 2, height, get_current_rotation());
|
||||
ps = sub_98197C(session, imageId, 0, 0, 32, 27, 2, height, 0, 2, height);
|
||||
}
|
||||
|
||||
if (direction == 1 || direction == 2)
|
||||
|
@ -475,7 +475,7 @@ static void paint_virginia_reel_station(
|
|||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
imageId = SPR_STATION_BASE_B_SW_NE | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 28, 2, height - 2, 0, 2, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 28, 2, height - 2, 0, 2, height);
|
||||
|
||||
imageId = SPR_VIRGINIA_REEL_FLAT_SW_NE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98199C(session, imageId, 0, 0, 32, 20, 2, height, 0, 0, height, get_current_rotation());
|
||||
|
@ -485,7 +485,7 @@ static void paint_virginia_reel_station(
|
|||
else if (direction == 1 || direction == 3)
|
||||
{
|
||||
imageId = SPR_STATION_BASE_B_NW_SE | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, 0, 0, 28, 32, 2, height - 2, 2, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 28, 32, 2, height - 2, 2, 0, height);
|
||||
|
||||
imageId = SPR_VIRGINIA_REEL_FLAT_NW_SE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98199C(session, imageId, 0, 0, 20, 32, 2, height, 0, 0, height, get_current_rotation());
|
||||
|
|
|
@ -817,16 +817,16 @@ static void wild_mouse_track_left_quarter_turn_1(
|
|||
switch (direction)
|
||||
{
|
||||
case 0:
|
||||
sub_98197C(session, imageId, 0, 0, 26, 24, 2, height, 6, 2, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 26, 24, 2, height, 6, 2, height);
|
||||
break;
|
||||
case 1:
|
||||
sub_98196C(session, imageId, 0, 0, 26, 26, 2, height);
|
||||
break;
|
||||
case 2:
|
||||
sub_98197C(session, imageId, 0, 0, 24, 26, 2, height, 2, 6, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 24, 26, 2, height, 2, 6, height);
|
||||
break;
|
||||
case 3:
|
||||
sub_98197C(session, imageId, 0, 0, 24, 24, 2, height, 6, 6, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 24, 24, 2, height, 6, 6, height);
|
||||
break;
|
||||
}
|
||||
metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, -1, height, session->TrackColours[SCHEME_SUPPORTS]);
|
||||
|
|
|
@ -429,8 +429,9 @@ static void wooden_rc_track_paint_bb(paint_session * session, const sprite_bb_2
|
|||
uint32 imageId = bb->sprite_id_a | wooden_rc_get_track_colour(session);
|
||||
uint32 railsImageId = bb->sprite_id_b | wooden_rc_get_rails_colour(session);
|
||||
|
||||
sub_98197C(session, imageId, (sint8)bb->offset.x, (sint8)bb->offset.y, bb->bb_size.x, bb->bb_size.y, (sint8)bb->bb_size.z,
|
||||
height + bb->offset.z, bb->bb_offset.x, bb->bb_offset.y, height + bb->bb_offset.z, get_current_rotation());
|
||||
sub_98197C(
|
||||
session, imageId, (sint8)bb->offset.x, (sint8)bb->offset.y, bb->bb_size.x, bb->bb_size.y, (sint8)bb->bb_size.z,
|
||||
height + bb->offset.z, bb->bb_offset.x, bb->bb_offset.y, height + bb->bb_offset.z);
|
||||
sub_98199C(session, railsImageId, (sint8)bb->offset.x, (sint8)bb->offset.y, bb->bb_size.x, bb->bb_size.y,
|
||||
(sint8)bb->bb_size.z, height + bb->offset.z, bb->bb_offset.x, bb->bb_offset.y, height + bb->bb_offset.z,
|
||||
get_current_rotation());
|
||||
|
|
|
@ -637,13 +637,13 @@ static void wooden_wild_mouse_track_left_quarter_turn_1(
|
|||
switch (direction)
|
||||
{
|
||||
case 0:
|
||||
sub_98197C(session, imageId, 6, 0, 26, 24, 1, height, 6, 2, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 6, 0, 26, 24, 1, height, 6, 2, height);
|
||||
break;
|
||||
case 1:
|
||||
sub_98196C(session, imageId, 0, 0, 26, 26, 1, height);
|
||||
break;
|
||||
case 2:
|
||||
sub_98197C(session, imageId, 0, 6, 24, 26, 1, height, 2, 6, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 6, 24, 26, 1, height, 2, 6, height);
|
||||
break;
|
||||
case 3:
|
||||
sub_98196C(session, imageId, 6, 6, 24, 24, 1, height);
|
||||
|
|
|
@ -198,11 +198,11 @@ static void paint_car_ride_track_25_deg_up(
|
|||
|
||||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 2, 32, 20, 1, height, 0, 6, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 2, 32, 20, 1, height, 0, 6, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, imageId, 2, 0, 20, 32, 1, height, 6, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 2, 0, 20, 32, 1, height, 6, 0, height);
|
||||
}
|
||||
|
||||
switch (direction)
|
||||
|
@ -240,11 +240,11 @@ static void paint_car_ride_track_flat_to_25_deg_up(
|
|||
|
||||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 2, 32, 20, 1, height, 0, 6, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 2, 32, 20, 1, height, 0, 6, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, imageId, 2, 0, 20, 32, 1, height, 6, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 2, 0, 20, 32, 1, height, 6, 0, height);
|
||||
}
|
||||
|
||||
switch (direction)
|
||||
|
@ -282,11 +282,11 @@ static void paint_car_ride_track_25_deg_up_to_flat(
|
|||
|
||||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 2, 32, 20, 1, height, 0, 6, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 2, 32, 20, 1, height, 0, 6, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, imageId, 2, 0, 20, 32, 1, height, 6, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 2, 0, 20, 32, 1, height, 6, 0, height);
|
||||
}
|
||||
|
||||
switch (direction)
|
||||
|
@ -361,12 +361,12 @@ static void paint_car_ride_station(
|
|||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
imageId = SPR_STATION_BASE_B_SW_NE | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 28, 1, height - 2, 0, 2, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 28, 1, height - 2, 0, 2, height);
|
||||
}
|
||||
else if (direction == 1 || direction == 3)
|
||||
{
|
||||
imageId = SPR_STATION_BASE_B_NW_SE | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, 0, 0, 28, 32, 1, height - 2, 2, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 28, 32, 1, height - 2, 2, 0, height);
|
||||
}
|
||||
|
||||
imageId = car_ride_track_pieces_flat[direction] | session->TrackColours[SCHEME_TRACK];
|
||||
|
@ -473,13 +473,13 @@ static void paint_car_ride_track_left_quarter_turn_1_tile(
|
|||
switch (direction)
|
||||
{
|
||||
case 0:
|
||||
sub_98197C(session, imageId, 6, 0, 26, 24, 1, height, 6, 2, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 6, 0, 26, 24, 1, height, 6, 2, height);
|
||||
break;
|
||||
case 1:
|
||||
sub_98196C(session, imageId, 0, 0, 26, 26, 1, height);
|
||||
break;
|
||||
case 2:
|
||||
sub_98197C(session, imageId, 0, 6, 24, 26, 1, height, 2, 6, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 6, 24, 26, 1, height, 2, 6, height);
|
||||
break;
|
||||
case 3:
|
||||
sub_98196C(session, imageId, 6, 6, 24, 24, 1, height);
|
||||
|
@ -559,16 +559,16 @@ static void paint_car_ride_track_60_deg_up(
|
|||
switch (direction)
|
||||
{
|
||||
case 0:
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 1, height, 0, 6, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 1, height, 0, 6, height);
|
||||
break;
|
||||
case 1:
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 98, height, 27, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 98, height, 27, 0, height);
|
||||
break;
|
||||
case 2:
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 98, height, 0, 27, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 98, height, 0, 27, height);
|
||||
break;
|
||||
case 3:
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 1, height, 6, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 1, height, 6, 0, height);
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -613,11 +613,11 @@ static void paint_car_ride_track_25_deg_up_to_60_deg_up(
|
|||
|
||||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 1, height, 0, 6, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 1, height, 0, 6, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 1, height, 6, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 1, height, 6, 0, height);
|
||||
}
|
||||
|
||||
if (car_ride_track_pieces_25_deg_up_to_60_deg_up[direction][1] != 0)
|
||||
|
@ -626,11 +626,11 @@ static void paint_car_ride_track_25_deg_up_to_60_deg_up(
|
|||
|
||||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 66, height, 0, 27, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 66, height, 0, 27, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 66, height, 27, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 66, height, 27, 0, height);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -675,11 +675,11 @@ static void paint_car_ride_track_60_deg_up_to_25_deg_up(
|
|||
|
||||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 1, height, 0, 6, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 1, height, 0, 6, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 1, height, 6, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 1, height, 6, 0, height);
|
||||
}
|
||||
|
||||
if (car_ride_track_pieces_60_deg_up_to_25_deg_up[direction][1] != 0)
|
||||
|
@ -688,11 +688,11 @@ static void paint_car_ride_track_60_deg_up_to_25_deg_up(
|
|||
|
||||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 66, height, 0, 27, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 66, height, 0, 27, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 66, height, 27, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 66, height, 27, 0, height);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -45,8 +45,7 @@ static void paint_circus_show_tent(paint_session * session, uint8 rideIndex, uin
|
|||
imageId += direction;
|
||||
}
|
||||
|
||||
sub_98197C(session, imageId | imageColourFlags, al, cl, 24, 24, 47, height + 3, al + 16, cl + 16, height + 3,
|
||||
get_current_rotation());
|
||||
sub_98197C(session, imageId | imageColourFlags, al, cl, 24, 24, 47, height + 3, al + 16, cl + 16, height + 3);
|
||||
|
||||
session->CurrentlyDrawnItem = savedTileElement;
|
||||
session->InteractionType = VIEWPORT_INTERACTION_ITEM_RIDE;
|
||||
|
|
|
@ -64,8 +64,9 @@ static void paint_crooked_house_structure(paint_session * session, uint8 directi
|
|||
uint32 image_id = (direction + rideEntry->vehicles[0].base_image_id) | session->TrackColours[SCHEME_MISC];
|
||||
|
||||
rct_crooked_house_bound_box boundBox = crooked_house_data[segment];
|
||||
sub_98197C(session, image_id, x_offset, y_offset, boundBox.length_x, boundBox.length_y, 127, height + 3, boundBox.offset_x,
|
||||
boundBox.offset_y, height + 3, get_current_rotation());
|
||||
sub_98197C(
|
||||
session, image_id, x_offset, y_offset, boundBox.length_x, boundBox.length_y, 127, height + 3, boundBox.offset_x,
|
||||
boundBox.offset_y, height + 3);
|
||||
}
|
||||
|
||||
static void paint_crooked_house(
|
||||
|
|
|
@ -60,7 +60,7 @@ static void paint_dodgems(
|
|||
wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_MISC], nullptr);
|
||||
|
||||
uint32 imageId = SPR_DODGEMS_FLOOR | session->TrackColours[SCHEME_SUPPORTS];
|
||||
sub_98197C(session, imageId, 0, 0, 30, 30, 1, height, 1, 1, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 30, 30, 1, height, 1, 1, height);
|
||||
|
||||
track_paint_util_paint_fences(session, edges, position, tileElement, ride, session->TrackColours[SCHEME_SUPPORTS], height,
|
||||
dodgems_fence_sprites, get_current_rotation());
|
||||
|
|
|
@ -95,8 +95,9 @@ static void paint_ferris_wheel_structure(paint_session * session, uint8 rideInde
|
|||
ferris_wheel_bound_box boundBox = ferris_wheel_data[direction];
|
||||
|
||||
imageId = (22150 + (direction & 1) * 2) | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, xOffset, yOffset, boundBox.length_x, boundBox.length_y, 127, height, boundBox.offset_x,
|
||||
boundBox.offset_y, height, get_current_rotation());
|
||||
sub_98197C(
|
||||
session, imageId, xOffset, yOffset, boundBox.length_x, boundBox.length_y, 127, height, boundBox.offset_x,
|
||||
boundBox.offset_y, height);
|
||||
|
||||
imageId = (baseImageId + direction * 8 + imageOffset) | imageColourFlags;
|
||||
sub_98199C(session, imageId, xOffset, yOffset, boundBox.length_x, boundBox.length_y, 127, height, boundBox.offset_x,
|
||||
|
@ -182,12 +183,12 @@ static void paint_ferris_wheel(
|
|||
{
|
||||
// Bound box is slightly different from track_paint_util_paint_fences
|
||||
imageId = SPR_FENCE_ROPE_SE | colourFlags;
|
||||
sub_98197C(session, imageId, 0, 0, 28, 1, 7, height, 0, 29, height + 3, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 28, 1, 7, height, 0, 29, height + 3);
|
||||
}
|
||||
if (edges & EDGE_SW && track_paint_util_has_fence(EDGE_SW, position, tileElement, ride, rotation))
|
||||
{
|
||||
imageId = SPR_FENCE_ROPE_SW | colourFlags;
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 7, height, 30, 0, height + 2, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 7, height, 30, 0, height + 2);
|
||||
}
|
||||
|
||||
switch (relativeTrackSequence)
|
||||
|
|
|
@ -56,7 +56,7 @@ static void paint_flying_saucers(
|
|||
wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_MISC], nullptr);
|
||||
|
||||
uint32 imageId = SPR_FLYING_SAUCERS_FLOOR | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 30, 30, 1, height, 1, 1, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 30, 30, 1, height, 1, 1, height);
|
||||
|
||||
track_paint_util_paint_fences(session, edges, position, tileElement, ride, session->TrackColours[SCHEME_TRACK], height,
|
||||
flying_saucers_fence_sprites, get_current_rotation());
|
||||
|
|
|
@ -149,11 +149,11 @@ static void paint_ghost_train_track_flat(
|
|||
|
||||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 3, height, 0, 6, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 3, height, 0, 6, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 3, height, 6, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 3, height, 6, 0, height);
|
||||
}
|
||||
|
||||
if (direction == 0 || direction == 2)
|
||||
|
@ -189,21 +189,21 @@ static void paint_ghost_train_track_25_deg_up(
|
|||
uint32 imageId = ghost_train_track_pieces_25_deg_up[direction][0] | session->TrackColours[SCHEME_TRACK];
|
||||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 3, height, 0, 6, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 3, height, 0, 6, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 3, height, 6, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 3, height, 6, 0, height);
|
||||
}
|
||||
|
||||
imageId = ghost_train_track_pieces_25_deg_up[direction][1] | session->TrackColours[SCHEME_TRACK];
|
||||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 23, height, 0, 27, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 23, height, 0, 27, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 23, height, 27, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 23, height, 27, 0, height);
|
||||
}
|
||||
|
||||
if (track_paint_util_should_paint_supports(position))
|
||||
|
@ -246,21 +246,21 @@ static void paint_ghost_train_track_flat_to_25_deg_up(
|
|||
uint32 imageId = ghost_train_track_pieces_flat_to_25_deg_up[direction][0] | session->TrackColours[SCHEME_TRACK];
|
||||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 3, height, 0, 6, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 3, height, 0, 6, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 3, height, 6, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 3, height, 6, 0, height);
|
||||
}
|
||||
|
||||
imageId = ghost_train_track_pieces_flat_to_25_deg_up[direction][1] | session->TrackColours[SCHEME_TRACK];
|
||||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 15, height, 0, 27, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 15, height, 0, 27, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 15, height, 27, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 15, height, 27, 0, height);
|
||||
}
|
||||
|
||||
if (track_paint_util_should_paint_supports(position))
|
||||
|
@ -302,21 +302,21 @@ static void paint_ghost_train_track_25_deg_up_to_flat_shared(
|
|||
uint32 imageId = ghost_train_track_pieces_25_deg_up_to_flat[direction][0] | session->TrackColours[SCHEME_TRACK];
|
||||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 3, height, 0, 6, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 3, height, 0, 6, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 3, height, 6, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 3, height, 6, 0, height);
|
||||
}
|
||||
|
||||
imageId = ghost_train_track_pieces_25_deg_up_to_flat[direction][1] | session->TrackColours[SCHEME_TRACK];
|
||||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 15, height, 0, 27, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 15, height, 0, 27, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 15, height, 27, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 15, height, 27, 0, height);
|
||||
}
|
||||
|
||||
if (track_paint_util_should_paint_supports(position))
|
||||
|
@ -424,12 +424,12 @@ static void paint_ghost_train_station(
|
|||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
imageId = SPR_STATION_BASE_B_SW_NE | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 28, 3, height - 2, 0, 2, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 28, 3, height - 2, 0, 2, height);
|
||||
}
|
||||
else if (direction == 1 || direction == 3)
|
||||
{
|
||||
imageId = SPR_STATION_BASE_B_NW_SE | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, 0, 0, 28, 32, 3, height - 2, 2, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 28, 32, 3, height - 2, 2, 0, height);
|
||||
}
|
||||
|
||||
imageId = ghost_train_track_pieces_flat[direction] | session->TrackColours[SCHEME_TRACK];
|
||||
|
@ -567,11 +567,11 @@ static void paint_ghost_train_track_spinning_tunnel(
|
|||
|
||||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 28, 20, 3, height, 2, 6, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 28, 20, 3, height, 2, 6, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 20, 28, 3, height, 6, 2, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 20, 28, 3, height, 6, 2, height);
|
||||
}
|
||||
|
||||
track_paint_util_spinning_tunnel_paint(session, 3, height, direction, get_current_rotation());
|
||||
|
@ -606,11 +606,11 @@ static void paint_ghost_train_track_brakes(
|
|||
|
||||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 3, height, 0, 6, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 3, height, 0, 6, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 3, height, 6, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 3, height, 6, 0, height);
|
||||
}
|
||||
|
||||
if (direction == 0 || direction == 2)
|
||||
|
|
|
@ -57,8 +57,9 @@ static void paint_haunted_house_structure(paint_session * session, uint8 rideInd
|
|||
|
||||
uint32 imageId = (baseImageId + direction) | session->TrackColours[SCHEME_MISC];
|
||||
haunted_house_bound_box boundBox = haunted_house_data[part];
|
||||
sub_98197C(session, imageId, xOffset, yOffset, boundBox.length_x, boundBox.length_y, 127, height, boundBox.offset_x,
|
||||
boundBox.offset_y, height, get_current_rotation());
|
||||
sub_98197C(
|
||||
session, imageId, xOffset, yOffset, boundBox.length_x, boundBox.length_y, 127, height, boundBox.offset_x,
|
||||
boundBox.offset_y, height);
|
||||
|
||||
rct_drawpixelinfo * dpi = session->Unk140E9A8;
|
||||
if (dpi->zoom_level == 0 && frameNum != 0)
|
||||
|
|
|
@ -92,91 +92,86 @@ static void maze_paint_setup(
|
|||
|
||||
image_id = base_image_id + SPR_MAZE_OFFSET_WALL_CENTRE;
|
||||
if (maze_entry & MAZE_ENTRY_FLAG_3)
|
||||
sub_98197C(session, image_id, 2, 2, 10, 10, 9, height, 3, 3, height + 2, rotation);
|
||||
sub_98197C(session, image_id, 2, 2, 10, 10, 9, height, 3, 3, height + 2);
|
||||
|
||||
if (maze_entry & MAZE_ENTRY_FLAG_7)
|
||||
sub_98197C(session, image_id, 2, 18, 10, 10, 9, height, 3, 19, height + 2, rotation);
|
||||
sub_98197C(session, image_id, 2, 18, 10, 10, 9, height, 3, 19, height + 2);
|
||||
|
||||
if (maze_entry & MAZE_ENTRY_FLAG_11)
|
||||
sub_98197C(session, image_id, 18, 18, 10, 10, 9, height, 19, 19, height + 2, rotation);
|
||||
sub_98197C(session, image_id, 18, 18, 10, 10, 9, height, 19, 19, height + 2);
|
||||
|
||||
if (maze_entry & MAZE_ENTRY_FLAG_15)
|
||||
sub_98197C(session, image_id, 18, 2, 10, 10, 9, height, 19, 3, height + 2, rotation);
|
||||
sub_98197C(session, image_id, 18, 2, 10, 10, 9, height, 19, 3, height + 2);
|
||||
|
||||
image_id = base_image_id + SPR_MAZE_OFFSET_WALL_TOP_LEFT;
|
||||
if (maze_entry & MAZE_ENTRY_FLAG_0)
|
||||
sub_98197C(session, image_id, 2, 0, 10, 1, 9, height, 3, 1, height + 2, rotation);
|
||||
sub_98197C(session, image_id, 2, 0, 10, 1, 9, height, 3, 1, height + 2);
|
||||
|
||||
if (maze_entry & MAZE_ENTRY_FLAG_13)
|
||||
sub_98197C(session, image_id, 18, 0, 10, 1, 9, height, 19, 1, height + 2, rotation);
|
||||
sub_98197C(session, image_id, 18, 0, 10, 1, 9, height, 19, 1, height + 2);
|
||||
|
||||
image_id = base_image_id + SPR_MAZE_OFFSET_WALL_BOTTOM_RIGHT;
|
||||
if (maze_entry & MAZE_ENTRY_FLAG_5)
|
||||
sub_98197C(session, image_id, 2, 30, 10, 1, 9, height, 3, 30, height + 2, rotation);
|
||||
sub_98197C(session, image_id, 2, 30, 10, 1, 9, height, 3, 30, height + 2);
|
||||
|
||||
if (maze_entry & MAZE_ENTRY_FLAG_8)
|
||||
sub_98197C(session, image_id, 18, 30, 10, 1, 9, height, 19, 30, height + 2, rotation);
|
||||
sub_98197C(session, image_id, 18, 30, 10, 1, 9, height, 19, 30, height + 2);
|
||||
|
||||
image_id = base_image_id + SPR_MAZE_OFFSET_WALL_TOP_RIGHT;
|
||||
if (maze_entry & MAZE_ENTRY_FLAG_1)
|
||||
sub_98197C(session, image_id, 0, 2, 1, 10, 9, height, 1, 3, height + 2, rotation);
|
||||
sub_98197C(session, image_id, 0, 2, 1, 10, 9, height, 1, 3, height + 2);
|
||||
|
||||
if (maze_entry & MAZE_ENTRY_FLAG_4)
|
||||
sub_98197C(session, image_id, 0, 18, 1, 10, 9, height, 1, 19, height + 2, rotation);
|
||||
sub_98197C(session, image_id, 0, 18, 1, 10, 9, height, 1, 19, height + 2);
|
||||
|
||||
image_id = base_image_id + SPR_MAZE_OFFSET_WALL_BOTTOM_LEFT;
|
||||
if (maze_entry & MAZE_ENTRY_FLAG_12)
|
||||
sub_98197C(session, image_id, 30, 2, 1, 10, 9, height, 30, 3, height + 2, rotation);
|
||||
sub_98197C(session, image_id, 30, 2, 1, 10, 9, height, 30, 3, height + 2);
|
||||
|
||||
if (maze_entry & MAZE_ENTRY_FLAG_9)
|
||||
sub_98197C(session, image_id, 30, 18, 1, 10, 9, height, 30, 19, height + 2, rotation);
|
||||
sub_98197C(session, image_id, 30, 18, 1, 10, 9, height, 30, 19, height + 2);
|
||||
|
||||
image_id = base_image_id + SPR_MAZE_OFFSET_WALL_INNER_NE_SW;
|
||||
if (maze_entry & MAZE_ENTRY_FLAG_2)
|
||||
sub_98197C(session, image_id, 2, 14, 10, 4, 9, height, 3, 14, height + 2, rotation);
|
||||
sub_98197C(session, image_id, 2, 14, 10, 4, 9, height, 3, 14, height + 2);
|
||||
|
||||
if (maze_entry & MAZE_ENTRY_FLAG_10)
|
||||
sub_98197C(session, image_id, 18, 14, 10, 4, 9, height, 19, 14, height + 2, rotation);
|
||||
sub_98197C(session, image_id, 18, 14, 10, 4, 9, height, 19, 14, height + 2);
|
||||
|
||||
image_id = base_image_id + SPR_MAZE_OFFSET_WALL_INNER_NW_SE;
|
||||
if (maze_entry & MAZE_ENTRY_FLAG_14)
|
||||
sub_98197C(session, image_id, 14, 2, 4, 10, 9, height, 14, 3, height + 2, rotation);
|
||||
sub_98197C(session, image_id, 14, 2, 4, 10, 9, height, 14, 3, height + 2);
|
||||
|
||||
if (maze_entry & MAZE_ENTRY_FLAG_6)
|
||||
sub_98197C(session, image_id, 14, 18, 4, 10, 9, height, 14, 19, height + 2, rotation);
|
||||
sub_98197C(session, image_id, 14, 18, 4, 10, 9, height, 14, 19, height + 2);
|
||||
|
||||
image_id = base_image_id + SPR_MAZE_OFFSET_COLUMN_CORNER;
|
||||
if (maze_entry & (MAZE_ENTRY_FLAG_0 | MAZE_ENTRY_FLAG_1))
|
||||
sub_98197C(session, image_id, 0, 0, 1, 1, 9, height, 1, 1, height + 2, rotation);
|
||||
sub_98197C(session, image_id, 0, 0, 1, 1, 9, height, 1, 1, height + 2);
|
||||
|
||||
if (maze_entry & (MAZE_ENTRY_FLAG_4 | MAZE_ENTRY_FLAG_5))
|
||||
sub_98197C(session, image_id, 0, 30, 1, 1, 9, height, 1, 30, height + 2, rotation);
|
||||
sub_98197C(session, image_id, 0, 30, 1, 1, 9, height, 1, 30, height + 2);
|
||||
|
||||
if (maze_entry & (MAZE_ENTRY_FLAG_8 | MAZE_ENTRY_FLAG_9))
|
||||
sub_98197C(session, image_id, 30, 30, 1, 1, 9, height, 30, 30, height + 2, rotation);
|
||||
sub_98197C(session, image_id, 30, 30, 1, 1, 9, height, 30, 30, height + 2);
|
||||
|
||||
if (maze_entry & (MAZE_ENTRY_FLAG_12 | MAZE_ENTRY_FLAG_13))
|
||||
sub_98197C(session, image_id, 30, 0, 1, 1, 9, height, 30, 1, height + 2, rotation);
|
||||
|
||||
sub_98197C(session, image_id, 30, 0, 1, 1, 9, height, 30, 1, height + 2);
|
||||
|
||||
if (maze_entry & (MAZE_ENTRY_FLAG_0 | MAZE_ENTRY_FLAG_13 | MAZE_ENTRY_FLAG_14))
|
||||
sub_98197C(session, base_image_id + SPR_MAZE_OFFSET_COLUMN_TOP_LEFT, 14, 0, 2, 1, 9, height, 15, 1, height + 2, rotation);
|
||||
|
||||
sub_98197C(session, base_image_id + SPR_MAZE_OFFSET_COLUMN_TOP_LEFT, 14, 0, 2, 1, 9, height, 15, 1, height + 2);
|
||||
|
||||
if (maze_entry & (MAZE_ENTRY_FLAG_5 | MAZE_ENTRY_FLAG_6 | MAZE_ENTRY_FLAG_8))
|
||||
sub_98197C(session, base_image_id + SPR_MAZE_OFFSET_COLUMN_BOTTOM_RIGHT, 14, 30, 2, 1, 9, height, 15, 30, height + 2, rotation);
|
||||
|
||||
sub_98197C(session, base_image_id + SPR_MAZE_OFFSET_COLUMN_BOTTOM_RIGHT, 14, 30, 2, 1, 9, height, 15, 30, height + 2);
|
||||
|
||||
if (maze_entry & (MAZE_ENTRY_FLAG_1 | MAZE_ENTRY_FLAG_2 | MAZE_ENTRY_FLAG_4))
|
||||
sub_98197C(session, base_image_id + SPR_MAZE_OFFSET_COLUMN_TOP_RIGHT, 0, 14, 1, 2, 9, height, 1, 15, height + 2, rotation);
|
||||
|
||||
sub_98197C(session, base_image_id + SPR_MAZE_OFFSET_COLUMN_TOP_RIGHT, 0, 14, 1, 2, 9, height, 1, 15, height + 2);
|
||||
|
||||
if (maze_entry & (MAZE_ENTRY_FLAG_9 | MAZE_ENTRY_FLAG_10 | MAZE_ENTRY_FLAG_12))
|
||||
sub_98197C(session, base_image_id + SPR_MAZE_OFFSET_COLUMN_BOTTOM_LEFT, 30, 14, 1, 2, 9, height, 30, 15, height + 2, rotation);
|
||||
|
||||
sub_98197C(session, base_image_id + SPR_MAZE_OFFSET_COLUMN_BOTTOM_LEFT, 30, 14, 1, 2, 9, height, 30, 15, height + 2);
|
||||
|
||||
if (maze_entry & (MAZE_ENTRY_FLAG_2 | MAZE_ENTRY_FLAG_6 | MAZE_ENTRY_FLAG_10 | MAZE_ENTRY_FLAG_14)) {
|
||||
sub_98197C(session, base_image_id + SPR_MAZE_OFFSET_COLUMN_CENTRE, 14, 14, 2, 2, 8, height, 15, 15, height + 2, rotation);
|
||||
sub_98197C(session, base_image_id + SPR_MAZE_OFFSET_COLUMN_CENTRE, 14, 14, 2, 2, 8, height, 15, 15, height + 2);
|
||||
|
||||
paint_util_set_segment_support_height(session, SEGMENT_C4, height + 12, 0x20);
|
||||
}
|
||||
|
|
|
@ -76,8 +76,7 @@ static void paint_merry_go_round_structure(paint_session * session, uint8 rideIn
|
|||
}
|
||||
|
||||
uint32 imageId = (baseImageId + imageOffset) | imageColourFlags;
|
||||
sub_98197C(session, imageId, xOffset, yOffset, 24, 24, 48, height, xOffset + 16, yOffset + 16, height,
|
||||
get_current_rotation());
|
||||
sub_98197C(session, imageId, xOffset, yOffset, 24, 24, 48, height, xOffset + 16, yOffset + 16, height);
|
||||
|
||||
rct_drawpixelinfo * dpi = session->Unk140E9A8;
|
||||
if (dpi->zoom_level == 0 && ride->lifecycle_flags & RIDE_LIFECYCLE_ON_TRACK && vehicle != nullptr)
|
||||
|
|
|
@ -382,12 +382,14 @@ static paint_struct * mini_golf_paint_util_7c(paint_session * session, uint8 dir
|
|||
{
|
||||
if (direction & 1)
|
||||
{
|
||||
return sub_98197C(session, image_id, y_offset, x_offset, bound_box_length_y, bound_box_length_x, bound_box_length_z,
|
||||
z_offset, bound_box_offset_y, bound_box_offset_x, bound_box_offset_z, rotation);
|
||||
return sub_98197C(
|
||||
session, image_id, y_offset, x_offset, bound_box_length_y, bound_box_length_x, bound_box_length_z, z_offset,
|
||||
bound_box_offset_y, bound_box_offset_x, bound_box_offset_z);
|
||||
}
|
||||
|
||||
return sub_98197C(session, image_id, x_offset, y_offset, bound_box_length_x, bound_box_length_y, bound_box_length_z,
|
||||
z_offset, bound_box_offset_x, bound_box_offset_y, bound_box_offset_z, rotation);
|
||||
return sub_98197C(
|
||||
session, image_id, x_offset, y_offset, bound_box_length_x, bound_box_length_y, bound_box_length_z, z_offset,
|
||||
bound_box_offset_x, bound_box_offset_y, bound_box_offset_z);
|
||||
}
|
||||
|
||||
static bool mini_golf_paint_util_should_draw_fence(paint_session * session, const rct_tile_element * tileElement)
|
||||
|
@ -426,13 +428,13 @@ static void paint_mini_golf_track_flat(
|
|||
if (direction & 1)
|
||||
{
|
||||
imageId = SPR_MINI_GOLF_FLAT_NW_SE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 1, height, 6, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 1, height, 6, 0, height);
|
||||
paint_util_push_tunnel_right(session, height, TUNNEL_10);
|
||||
}
|
||||
else
|
||||
{
|
||||
imageId = SPR_MINI_GOLF_FLAT_SW_NE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 1, height, 0, 6, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 1, height, 0, 6, height);
|
||||
paint_util_push_tunnel_left(session, height, TUNNEL_10);
|
||||
}
|
||||
|
||||
|
@ -445,18 +447,18 @@ static void paint_mini_golf_track_flat(
|
|||
if (direction & 1)
|
||||
{
|
||||
imageId = SPR_MINI_GOLF_FLAT_FENCE_BACK_NW_SE | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 7, height, 10, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 7, height, 10, 0, height + 2);
|
||||
|
||||
imageId = SPR_MINI_GOLF_FLAT_FENCE_FRONT_NW_SE | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 7, height, 22, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 7, height, 22, 0, height + 2);
|
||||
}
|
||||
else
|
||||
{
|
||||
imageId = SPR_MINI_GOLF_FLAT_FENCE_BACK_SW_NE | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 7, height, 0, 10, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 7, height, 0, 10, height + 2);
|
||||
|
||||
imageId = SPR_MINI_GOLF_FLAT_FENCE_FRONT_SW_NE | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 7, height, 0, 22, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 7, height, 0, 22, height + 2);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -652,14 +654,14 @@ static void paint_mini_golf_station(
|
|||
if (hasFence)
|
||||
{
|
||||
imageId = SPR_MINI_GOLF_FLAT_FENCE_BACK_NW_SE | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, -10, 0, 1, 32, 7, height, 0, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, -10, 0, 1, 32, 7, height, 0, 0, height + 2);
|
||||
}
|
||||
|
||||
bool hasSWFence = track_paint_util_has_fence(EDGE_SW, position, tileElement, ride, get_current_rotation());
|
||||
if (hasFence)
|
||||
{
|
||||
imageId = SPR_MINI_GOLF_FLAT_FENCE_FRONT_NW_SE | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, 10, 0, 1, 32, 7, height, 31, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 10, 0, 1, 32, 7, height, 31, 0, height + 2);
|
||||
}
|
||||
|
||||
track_paint_util_draw_station_covers(session, EDGE_NE, hasFence, entranceStyle, direction, height);
|
||||
|
@ -674,14 +676,14 @@ static void paint_mini_golf_station(
|
|||
if (hasFence)
|
||||
{
|
||||
imageId = SPR_MINI_GOLF_FLAT_FENCE_BACK_SW_NE | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, 0, -10, 32, 1, 7, height, 0, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, -10, 32, 1, 7, height, 0, 0, height + 2);
|
||||
}
|
||||
|
||||
bool hasSEFence = track_paint_util_has_fence(EDGE_SE, position, tileElement, ride, get_current_rotation());
|
||||
if (hasFence)
|
||||
{
|
||||
imageId = SPR_MINI_GOLF_FLAT_FENCE_FRONT_SW_NE | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, 0, 10, 32, 1, 7, height, 0, 31, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 10, 32, 1, 7, height, 0, 31, height + 2);
|
||||
}
|
||||
|
||||
track_paint_util_draw_station_covers(session, EDGE_NW, hasFence, entranceStyle, direction, height);
|
||||
|
@ -768,11 +770,11 @@ static void paint_mini_golf_track_left_quarter_turn_1_tile(
|
|||
{
|
||||
case 0:
|
||||
imageId = SPR_MINI_GOLF_QUARTER_TURN_1_TILE_FENCE_INSIDE_SW_NW | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, 0, 0, 5, 5, 5, height, 24, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 5, 5, 5, height, 24, 0, height + 2);
|
||||
break;
|
||||
case 2:
|
||||
imageId = SPR_MINI_GOLF_QUARTER_TURN_1_TILE_FENCE_INSIDE_NE_SE | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, 0, 0, 5, 5, 5, height, 0, 24, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 5, 5, 5, height, 0, 24, height + 2);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -825,14 +827,12 @@ static void paint_mini_golf_hole_ab(paint_session * session, uint8 trackSequence
|
|||
}
|
||||
|
||||
imageId = sprites[direction][trackSequence][1] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, boundBox.x, boundBox.y, 0, height, boundBoxOffset.x, boundBoxOffset.y, height + 24,
|
||||
get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, boundBox.x, boundBox.y, 0, height, boundBoxOffset.x, boundBoxOffset.y, height + 24);
|
||||
|
||||
if (drewSupports)
|
||||
{
|
||||
imageId = ((direction & 1) ? SPR_FLOOR_PLANKS_90_DEG : SPR_FLOOR_PLANKS) | session->TrackColours[SCHEME_SUPPORTS];
|
||||
sub_98197C(session, imageId, 0, 0, boundBox.x, boundBox.y, 1, height, boundBoxOffset.x, boundBoxOffset.y, height,
|
||||
get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, boundBox.x, boundBox.y, 1, height, boundBoxOffset.x, boundBoxOffset.y, height);
|
||||
|
||||
imageId = sprites[direction][trackSequence][0] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98199C(session, imageId, 0, 0, boundBox.x, boundBox.y, 1, height, boundBoxOffset.x, boundBoxOffset.y, height,
|
||||
|
@ -841,8 +841,7 @@ static void paint_mini_golf_hole_ab(paint_session * session, uint8 trackSequence
|
|||
else
|
||||
{
|
||||
imageId = sprites[direction][trackSequence][0] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, boundBox.x, boundBox.y, 1, height, boundBoxOffset.x, boundBoxOffset.y, height,
|
||||
get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, boundBox.x, boundBox.y, 1, height, boundBoxOffset.x, boundBoxOffset.y, height);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -914,23 +913,21 @@ static void paint_mini_golf_hole_c(
|
|||
{
|
||||
case 0x01:
|
||||
case 0x20:
|
||||
sub_98197C(session, imageId, 0, 0, 2, 26, 3, height, 30, 3, height + 4, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 2, 26, 3, height, 30, 3, height + 4);
|
||||
break;
|
||||
case 0x10:
|
||||
case 0x31:
|
||||
sub_98197C(session, imageId, 0, 0, 26, 2, 3, height, 3, 30, height + 4, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 26, 2, 3, height, 3, 30, height + 4);
|
||||
break;
|
||||
default:
|
||||
sub_98197C(session, imageId, 0, 0, boundBox.x, boundBox.y, 0, height, boundBoxOffset.x, boundBoxOffset.y, height + 24,
|
||||
get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, boundBox.x, boundBox.y, 0, height, boundBoxOffset.x, boundBoxOffset.y, height + 24);
|
||||
break;
|
||||
}
|
||||
|
||||
if (drewSupports)
|
||||
{
|
||||
imageId = ((direction & 1) ? SPR_FLOOR_PLANKS_90_DEG : SPR_FLOOR_PLANKS) | session->TrackColours[SCHEME_SUPPORTS];
|
||||
sub_98197C(session, imageId, 0, 0, boundBox.x, boundBox.y, 1, height, boundBoxOffset.x, boundBoxOffset.y, height,
|
||||
get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, boundBox.x, boundBox.y, 1, height, boundBoxOffset.x, boundBoxOffset.y, height);
|
||||
|
||||
imageId = mini_golf_track_sprites_hole_c[direction][trackSequence][0] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98199C(session, imageId, 0, 0, boundBox.x, boundBox.y, 1, height, boundBoxOffset.x, boundBoxOffset.y, height,
|
||||
|
@ -939,8 +936,7 @@ static void paint_mini_golf_hole_c(
|
|||
else
|
||||
{
|
||||
imageId = mini_golf_track_sprites_hole_c[direction][trackSequence][0] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, boundBox.x, boundBox.y, 1, height, boundBoxOffset.x, boundBoxOffset.y, height,
|
||||
get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, boundBox.x, boundBox.y, 1, height, boundBoxOffset.x, boundBoxOffset.y, height);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -995,21 +991,20 @@ static void paint_mini_golf_hole_d(
|
|||
{
|
||||
case 0x01:
|
||||
case 0x32:
|
||||
sub_98197C(session, imageId, 0, 0, 2, 26, 3, height, 30, 3, height + 4, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 2, 26, 3, height, 30, 3, height + 4);
|
||||
break;
|
||||
case 0x02:
|
||||
sub_98197C(session, imageId, 0, 0, 23, 2, 3, height, 3, 30, height + 4, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 23, 2, 3, height, 3, 30, height + 4);
|
||||
break;
|
||||
case 0x10:
|
||||
sub_98197C(session, imageId, 0, 0, 2, 24, 3, height, 30, 3, height + 4, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 2, 24, 3, height, 30, 3, height + 4);
|
||||
break;
|
||||
case 0x20:
|
||||
case 0x31:
|
||||
sub_98197C(session, imageId, 0, 0, 26, 2, 3, height, 3, 30, height + 4, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 26, 2, 3, height, 3, 30, height + 4);
|
||||
break;
|
||||
default:
|
||||
sub_98197C(session, imageId, 0, 0, boundBox.x, boundBox.y, 0, height, boundBoxOffset.x, boundBoxOffset.y, height + 24,
|
||||
get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, boundBox.x, boundBox.y, 0, height, boundBoxOffset.x, boundBoxOffset.y, height + 24);
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -1026,8 +1021,7 @@ static void paint_mini_golf_hole_d(
|
|||
if (drewSupports)
|
||||
{
|
||||
imageId = ((supportType & 1) ? SPR_FLOOR_PLANKS_90_DEG : SPR_FLOOR_PLANKS) | session->TrackColours[SCHEME_SUPPORTS];
|
||||
sub_98197C(session, imageId, 0, 0, boundBox.x, boundBox.y, 1, height, boundBoxOffset.x, boundBoxOffset.y, height,
|
||||
get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, boundBox.x, boundBox.y, 1, height, boundBoxOffset.x, boundBoxOffset.y, height);
|
||||
|
||||
imageId = mini_golf_track_sprites_hole_d[direction][trackSequence][0] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98199C(session, imageId, 0, 0, boundBox.x, boundBox.y, 1, height, boundBoxOffset.x, boundBoxOffset.y, height,
|
||||
|
@ -1036,8 +1030,7 @@ static void paint_mini_golf_hole_d(
|
|||
else
|
||||
{
|
||||
imageId = mini_golf_track_sprites_hole_d[direction][trackSequence][0] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, boundBox.x, boundBox.y, 1, height, boundBoxOffset.x, boundBoxOffset.y, height,
|
||||
get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, boundBox.x, boundBox.y, 1, height, boundBoxOffset.x, boundBoxOffset.y, height);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1091,22 +1084,21 @@ static void paint_mini_golf_hole_e(
|
|||
switch ((direction << 4) | trackSequence)
|
||||
{
|
||||
case 0x01:
|
||||
sub_98197C(session, imageId, 0, 0, 2, 26, 3, height, 30, 3, height + 4, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 2, 26, 3, height, 30, 3, height + 4);
|
||||
break;
|
||||
case 0x02:
|
||||
case 0x20:
|
||||
case 0x31:
|
||||
sub_98197C(session, imageId, 0, 0, 26, 2, 3, height, 3, 30, height + 4, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 26, 2, 3, height, 3, 30, height + 4);
|
||||
break;
|
||||
case 0x10:
|
||||
sub_98197C(session, imageId, 0, 0, 2, 24, 3, height, 30, 3, height + 4, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 2, 24, 3, height, 30, 3, height + 4);
|
||||
break;
|
||||
case 0x32:
|
||||
sub_98197C(session, imageId, 0, 0, 2, 23, 3, height, 30, 3, height + 4, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 2, 23, 3, height, 30, 3, height + 4);
|
||||
break;
|
||||
default:
|
||||
sub_98197C(session, imageId, 0, 0, boundBox.x, boundBox.y, 0, height, boundBoxOffset.x, boundBoxOffset.y, height + 24,
|
||||
get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, boundBox.x, boundBox.y, 0, height, boundBoxOffset.x, boundBoxOffset.y, height + 24);
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -1123,8 +1115,7 @@ static void paint_mini_golf_hole_e(
|
|||
if (drewSupports)
|
||||
{
|
||||
imageId = ((supportType & 1) ? SPR_FLOOR_PLANKS_90_DEG : SPR_FLOOR_PLANKS) | session->TrackColours[SCHEME_SUPPORTS];
|
||||
sub_98197C(session, imageId, 0, 0, boundBox.x, boundBox.y, 1, height, boundBoxOffset.x, boundBoxOffset.y, height,
|
||||
get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, boundBox.x, boundBox.y, 1, height, boundBoxOffset.x, boundBoxOffset.y, height);
|
||||
|
||||
imageId = mini_golf_track_sprites_hole_e[direction][trackSequence][0] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98199C(session, imageId, 0, 0, boundBox.x, boundBox.y, 1, height, boundBoxOffset.x, boundBoxOffset.y, height,
|
||||
|
@ -1133,8 +1124,7 @@ static void paint_mini_golf_hole_e(
|
|||
else
|
||||
{
|
||||
imageId = mini_golf_track_sprites_hole_e[direction][trackSequence][0] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, boundBox.x, boundBox.y, 1, height, boundBoxOffset.x, boundBoxOffset.y, height,
|
||||
get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, boundBox.x, boundBox.y, 1, height, boundBoxOffset.x, boundBoxOffset.y, height);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1217,7 +1207,7 @@ void vehicle_visual_mini_golf_player(paint_session * session, sint32 x, sint32 i
|
|||
|
||||
uint32 image_id = rideEntry->vehicles[0].base_image_id + 1 + ebx;
|
||||
uint32 peep_palette = sprite->peep.tshirt_colour << 19 | sprite->peep.trousers_colour << 24 | 0x0A0000000;
|
||||
sub_98197C(session, image_id | peep_palette, 0, 0, 1, 1, 11, z, 0, 0, z + 5, get_current_rotation());
|
||||
sub_98197C(session, image_id | peep_palette, 0, 0, 1, 1, 11, z, 0, 0, z + 5);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -1246,5 +1236,5 @@ void vehicle_visual_mini_golf_ball(paint_session * session, sint32 x, sint32 ima
|
|||
rct_ride_entry * rideEntry = get_ride_entry(ride->subtype);
|
||||
|
||||
uint32 image_id = rideEntry->vehicles[0].base_image_id;
|
||||
sub_98197C(session, image_id, 0, 0, 1, 1, 0, z, 0, 0, z + 3, get_current_rotation());
|
||||
sub_98197C(session, image_id, 0, 0, 1, 1, 0, z, 0, 0, z + 3);
|
||||
}
|
||||
|
|
|
@ -37,7 +37,7 @@ static void paint_mini_helicopters_track_station(
|
|||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
imageId = SPR_STATION_BASE_B_SW_NE | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 28, 1, height - 2, 0, 2, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 28, 1, height - 2, 0, 2, height);
|
||||
|
||||
imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_NE_SW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98199C(session, imageId, 0, 0, 32, 20, 1, height, 0, 0, height, get_current_rotation());
|
||||
|
@ -49,7 +49,7 @@ static void paint_mini_helicopters_track_station(
|
|||
else if (direction == 1 || direction == 3)
|
||||
{
|
||||
imageId = SPR_STATION_BASE_B_NW_SE | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, 0, 0, 28, 32, 1, height - 2, 2, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 28, 32, 1, height - 2, 2, 0, height);
|
||||
|
||||
imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_SE_NW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98199C(session, imageId, 0, 0, 20, 32, 1, height, 0, 0, height, get_current_rotation());
|
||||
|
@ -80,13 +80,13 @@ static void paint_mini_helicopters_track_flat(
|
|||
if (direction & 1)
|
||||
{
|
||||
imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_SE_NW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 3, height, 6, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 3, height, 6, 0, height);
|
||||
paint_util_push_tunnel_right(session, height, TUNNEL_0);
|
||||
}
|
||||
else
|
||||
{
|
||||
imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_NE_SW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 3, height, 0, 6, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 3, height, 0, 6, height);
|
||||
paint_util_push_tunnel_left(session, height, TUNNEL_0);
|
||||
}
|
||||
|
||||
|
@ -117,22 +117,22 @@ static void paint_mini_helicopters_track_flat_to_25_deg_up(
|
|||
{
|
||||
case 0:
|
||||
imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_TO_25_DEG_UP_SW_NE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 3, height, 0, 6, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 3, height, 0, 6, height);
|
||||
paint_util_push_tunnel_left(session, height, TUNNEL_0);
|
||||
break;
|
||||
case 1:
|
||||
imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_TO_25_DEG_UP_NW_SE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 3, height, 6, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 3, height, 6, 0, height);
|
||||
paint_util_push_tunnel_right(session, height, TUNNEL_2);
|
||||
break;
|
||||
case 2:
|
||||
imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_TO_25_DEG_UP_NE_SW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 3, height, 0, 6, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 3, height, 0, 6, height);
|
||||
paint_util_push_tunnel_left(session, height, TUNNEL_2);
|
||||
break;
|
||||
case 3:
|
||||
imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_TO_25_DEG_UP_SE_NW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 3, height, 6, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 3, height, 6, 0, height);
|
||||
paint_util_push_tunnel_right(session, height, TUNNEL_0);
|
||||
break;
|
||||
}
|
||||
|
@ -163,22 +163,22 @@ static void paint_mini_helicopters_track_25_deg_up(
|
|||
{
|
||||
case 0:
|
||||
imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_25_DEG_UP_SW_NE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 3, height, 0, 6, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 3, height, 0, 6, height);
|
||||
paint_util_push_tunnel_left(session, height - 8, TUNNEL_1);
|
||||
break;
|
||||
case 1:
|
||||
imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_25_DEG_UP_NW_SE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 3, height, 6, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 3, height, 6, 0, height);
|
||||
paint_util_push_tunnel_right(session, height + 8, TUNNEL_2);
|
||||
break;
|
||||
case 2:
|
||||
imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_25_DEG_UP_NE_SW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 3, height, 0, 6, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 3, height, 0, 6, height);
|
||||
paint_util_push_tunnel_left(session, height + 8, TUNNEL_2);
|
||||
break;
|
||||
case 3:
|
||||
imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_25_DEG_UP_SE_NW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 3, height, 6, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 3, height, 6, 0, height);
|
||||
paint_util_push_tunnel_right(session, height - 8, TUNNEL_1);
|
||||
break;
|
||||
}
|
||||
|
@ -209,22 +209,22 @@ static void paint_mini_helicopters_track_25_deg_up_to_flat(
|
|||
{
|
||||
case 0:
|
||||
imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_25_DEG_UP_TO_FLAT_SW_NE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 3, height, 0, 6, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 3, height, 0, 6, height);
|
||||
paint_util_push_tunnel_left(session, height - 8, TUNNEL_0);
|
||||
break;
|
||||
case 1:
|
||||
imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_25_DEG_UP_TO_FLAT_NW_SE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 3, height, 6, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 3, height, 6, 0, height);
|
||||
paint_util_push_tunnel_right(session, height + 8, TUNNEL_12);
|
||||
break;
|
||||
case 2:
|
||||
imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_25_DEG_UP_TO_FLAT_NE_SW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 3, height, 0, 6, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 3, height, 0, 6, height);
|
||||
paint_util_push_tunnel_left(session, height + 8, TUNNEL_12);
|
||||
break;
|
||||
case 3:
|
||||
imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_25_DEG_UP_TO_FLAT_SE_NW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 3, height, 6, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 3, height, 6, 0, height);
|
||||
paint_util_push_tunnel_right(session, height - 8, TUNNEL_0);
|
||||
break;
|
||||
}
|
||||
|
|
|
@ -154,12 +154,14 @@ static paint_struct * paint_monorail_cycles_util_7c(paint_session * session, boo
|
|||
{
|
||||
if (flip)
|
||||
{
|
||||
return sub_98197C(session, image_id, y_offset, x_offset, bound_box_length_y, bound_box_length_x, bound_box_length_z,
|
||||
z_offset, bound_box_offset_y, bound_box_offset_x, bound_box_offset_z, rotation);
|
||||
return sub_98197C(
|
||||
session, image_id, y_offset, x_offset, bound_box_length_y, bound_box_length_x, bound_box_length_z, z_offset,
|
||||
bound_box_offset_y, bound_box_offset_x, bound_box_offset_z);
|
||||
}
|
||||
|
||||
return sub_98197C(session, image_id, x_offset, y_offset, bound_box_length_x, bound_box_length_y, bound_box_length_z,
|
||||
z_offset, bound_box_offset_x, bound_box_offset_y, bound_box_offset_z, rotation);
|
||||
return sub_98197C(
|
||||
session, image_id, x_offset, y_offset, bound_box_length_x, bound_box_length_y, bound_box_length_z, z_offset,
|
||||
bound_box_offset_x, bound_box_offset_y, bound_box_offset_z);
|
||||
}
|
||||
|
||||
/** rct2: 0x0088AD48 */
|
||||
|
@ -206,7 +208,7 @@ static void paint_monorail_cycles_station(
|
|||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
imageId = SPR_STATION_BASE_B_SW_NE | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 28, 1, height - 2, 0, 2, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 28, 1, height - 2, 0, 2, height);
|
||||
|
||||
imageId = SPR_MONORAIL_CYCLES_FLAT_SW_NE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98199C(session, imageId, 0, 0, 32, 20, 1, height, 0, 0, height, get_current_rotation());
|
||||
|
@ -218,7 +220,7 @@ static void paint_monorail_cycles_station(
|
|||
else if (direction == 1 || direction == 3)
|
||||
{
|
||||
imageId = SPR_STATION_BASE_B_NW_SE | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, 0, 0, 28, 32, 1, height - 2, 2, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 28, 32, 1, height - 2, 2, 0, height);
|
||||
|
||||
imageId = SPR_MONORAIL_CYCLES_FLAT_NW_SE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98199C(session, imageId, 0, 0, 20, 32, 1, height, 0, 0, height, get_current_rotation());
|
||||
|
|
|
@ -62,7 +62,7 @@ void vehicle_visual_observation_tower(paint_session * session, sint32 x, sint32
|
|||
|
||||
image_id =
|
||||
baseImage_id | (vehicle->colours.body_colour << 19) | (vehicle->colours.trim_colour << 24) | IMAGE_TYPE_REMAP_2_PLUS;
|
||||
paint_struct * ps = sub_98197C(session, image_id, 0, 0, 2, 2, 41, z, -11, -11, z + 1, get_current_rotation());
|
||||
paint_struct * ps = sub_98197C(session, image_id, 0, 0, 2, 2, 41, z, -11, -11, z + 1);
|
||||
if (ps != nullptr)
|
||||
{
|
||||
ps->tertiary_colour = vehicle->colours_extended;
|
||||
|
@ -70,7 +70,7 @@ void vehicle_visual_observation_tower(paint_session * session, sint32 x, sint32
|
|||
|
||||
image_id++;
|
||||
|
||||
ps = sub_98197C(session, image_id, 0, 0, 16, 16, 41, z, -5, -5, z + 1, get_current_rotation());
|
||||
ps = sub_98197C(session, image_id, 0, 0, 16, 16, 41, z, -5, -5, z + 1);
|
||||
if (ps != nullptr)
|
||||
{
|
||||
ps->tertiary_colour = vehicle->colours_extended;
|
||||
|
@ -97,7 +97,7 @@ static void paint_observation_tower_base(
|
|||
wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session->TrackColours[SCHEME_MISC], nullptr);
|
||||
|
||||
uint32 imageId = SPR_FLOOR_METAL_B | session->TrackColours[SCHEME_SUPPORTS];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 32, 1, height, 0, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 32, 1, height, 0, 0, height);
|
||||
|
||||
track_paint_util_paint_fences(session, edges, position, tileElement, ride, session->TrackColours[SCHEME_TRACK], height,
|
||||
fenceSpritesMetalB, get_current_rotation());
|
||||
|
@ -105,13 +105,13 @@ static void paint_observation_tower_base(
|
|||
if (trackSequence == 0)
|
||||
{
|
||||
imageId = SPR_OBSERVATION_TOWER_SEGMENT_BASE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 27, height, 8, 8, height + 3, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 27, height, 8, 8, height + 3);
|
||||
|
||||
imageId = SPR_OBSERVATION_TOWER_SEGMENT | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 30, height + 32, 8, 8, height + 32, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 30, height + 32, 8, 8, height + 32);
|
||||
|
||||
imageId = SPR_OBSERVATION_TOWER_SEGMENT | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 30, height + 64, 8, 8, height + 64, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 30, height + 64, 8, 8, height + 64);
|
||||
|
||||
paint_util_set_vertical_tunnel(session, height + 96);
|
||||
paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0);
|
||||
|
@ -172,7 +172,7 @@ static void paint_observation_tower_section(
|
|||
}
|
||||
|
||||
uint32 imageId = SPR_OBSERVATION_TOWER_SEGMENT | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 30, height, 8, 8, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 30, height, 8, 8, height);
|
||||
|
||||
const rct_tile_element * nextTileElement = tileElement + 1;
|
||||
if (tile_element_is_last_for_tile(tileElement) || tileElement->clearance_height != nextTileElement->base_height)
|
||||
|
|
|
@ -73,7 +73,7 @@ static void paint_space_rings_structure(paint_session * session, Ride * ride, ui
|
|||
}
|
||||
|
||||
uint32 imageId = (baseImageId + frameNum) | imageColourFlags;
|
||||
sub_98197C(session, imageId, 0, 0, 20, 20, 23, height, -10, -10, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 20, 20, 23, height, -10, -10, height);
|
||||
|
||||
if (vehicle != nullptr && vehicle->num_peeps > 0)
|
||||
{
|
||||
|
@ -116,12 +116,12 @@ static void paint_space_rings(
|
|||
if (track_paint_util_has_fence(EDGE_SW, position, tileElement, ride, get_current_rotation()))
|
||||
{
|
||||
imageId = SPR_SPACE_RINGS_FENCE_SW | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 28, 7, height, 29, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 28, 7, height, 29, 0, height + 2);
|
||||
}
|
||||
if (track_paint_util_has_fence(EDGE_SE, position, tileElement, ride, get_current_rotation()))
|
||||
{
|
||||
imageId = SPR_SPACE_RINGS_FENCE_SE | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, 0, 0, 28, 1, 7, height, 0, 29, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 28, 1, 7, height, 0, 29, height + 2);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
|
|
|
@ -71,7 +71,7 @@ static void spiral_slide_paint_tile_right(
|
|||
if (direction == 3)
|
||||
image_id = SPIRAL_SLIDE_RIGHT_R3 | session->TrackColours[SCHEME_TRACK];
|
||||
|
||||
sub_98197C(session, image_id, 16, 16, 16, 16, 108, height, 16, 0, height + 3, get_current_rotation());
|
||||
sub_98197C(session, image_id, 16, 16, 16, 16, 108, height, 16, 0, height + 3);
|
||||
}
|
||||
|
||||
static void spiral_slide_paint_tile_left(
|
||||
|
@ -93,7 +93,7 @@ static void spiral_slide_paint_tile_left(
|
|||
if (direction == 3)
|
||||
image_id = SPIRAL_SLIDE_LEFT_R3 | session->TrackColours[SCHEME_TRACK];
|
||||
|
||||
sub_98197C(session, image_id, 16, 16, 16, 16, 108, height, 0, 16, height + 3, get_current_rotation());
|
||||
sub_98197C(session, image_id, 16, 16, 16, 16, 108, height, 0, 16, height + 3);
|
||||
}
|
||||
|
||||
static void spiral_slide_paint_tile_front(
|
||||
|
@ -111,33 +111,33 @@ static void spiral_slide_paint_tile_front(
|
|||
if (direction == 1)
|
||||
{
|
||||
image_id = SPIRAL_SLIDE_INSIDE_R1 | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, image_id, 16, 16, 2, 16, 108, height, -12, 0, height + 3, get_current_rotation());
|
||||
sub_98197C(session, image_id, 16, 16, 2, 16, 108, height, -12, 0, height + 3);
|
||||
}
|
||||
else if (direction == 2)
|
||||
{
|
||||
image_id = SPIRAL_SLIDE_INSIDE_R2 | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, image_id, 16, 16, 16, 2, 108, height, 0, -12, height + 3, get_current_rotation());
|
||||
sub_98197C(session, image_id, 16, 16, 16, 2, 108, height, 0, -12, height + 3);
|
||||
}
|
||||
|
||||
if (direction == 0)
|
||||
{
|
||||
image_id = SPIRAL_SLIDE_CENTRE_R0 | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, image_id, 16, 16, 16, 8, 108, height, 0, 8, height + 3, get_current_rotation());
|
||||
sub_98197C(session, image_id, 16, 16, 16, 8, 108, height, 0, 8, height + 3);
|
||||
}
|
||||
else if (direction == 1)
|
||||
{
|
||||
image_id = SPIRAL_SLIDE_CENTRE_R1 | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, image_id, 16, 16, 2, 16, 108, height, 14, 0, height + 3, get_current_rotation());
|
||||
sub_98197C(session, image_id, 16, 16, 2, 16, 108, height, 14, 0, height + 3);
|
||||
}
|
||||
else if (direction == 2)
|
||||
{
|
||||
image_id = SPIRAL_SLIDE_CENTRE_R2 | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, image_id, 16, 16, 16, 2, 108, height, 0, 14, height + 3, get_current_rotation());
|
||||
sub_98197C(session, image_id, 16, 16, 16, 2, 108, height, 0, 14, height + 3);
|
||||
}
|
||||
else if (direction == 3)
|
||||
{
|
||||
image_id = SPIRAL_SLIDE_CENTRE_R3 | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, image_id, 16, 16, 8, 16, 108, height, 8, 0, height + 3, get_current_rotation());
|
||||
sub_98197C(session, image_id, 16, 16, 8, 16, 108, height, 8, 0, height + 3);
|
||||
}
|
||||
|
||||
rct_drawpixelinfo * dpi = session->Unk140E9A8;
|
||||
|
@ -226,7 +226,7 @@ static void paint_spiral_slide(
|
|||
|
||||
// Base
|
||||
uint32 imageId = ((direction & 1) ? SPIRAL_SLIDE_BASE_B : SPIRAL_SLIDE_BASE_A) | session->TrackColours[SCHEME_SUPPORTS];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 32, 1, height, 0, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 32, 1, height, 0, 0, height);
|
||||
|
||||
track_paint_util_paint_fences(session, edges, position, tileElement, ride, session->TrackColours[SCHEME_TRACK], height,
|
||||
spiral_slide_fence_sprites, get_current_rotation());
|
||||
|
|
|
@ -66,8 +66,9 @@ static void facility_paint_setup(
|
|||
{
|
||||
uint32 foundationImageId =
|
||||
((direction & 1) ? SPR_FLOOR_PLANKS_90_DEG : SPR_FLOOR_PLANKS) | session->TrackColours[SCHEME_3];
|
||||
sub_98197C(session, foundationImageId, 0, 0, lengthX, lengthY, 29, height, direction == 3 ? 28 : 2,
|
||||
direction == 0 ? 28 : 2, height, rotation);
|
||||
sub_98197C(
|
||||
session, foundationImageId, 0, 0, lengthX, lengthY, 29, height, direction == 3 ? 28 : 2, direction == 0 ? 28 : 2,
|
||||
height);
|
||||
|
||||
// Door image or base
|
||||
sub_98199C(session, imageId, 0, 0, lengthX, lengthY, 29, height, direction == 3 ? 28 : 2, direction == 0 ? 28 : 2,
|
||||
|
@ -76,20 +77,20 @@ static void facility_paint_setup(
|
|||
else
|
||||
{
|
||||
// Door image or base
|
||||
sub_98197C(session, imageId, 0, 0, lengthX, lengthY, 29, height, direction == 3 ? 28 : 2, direction == 0 ? 28 : 2,
|
||||
height, rotation);
|
||||
sub_98197C(
|
||||
session, imageId, 0, 0, lengthX, lengthY, 29, height, direction == 3 ? 28 : 2, direction == 0 ? 28 : 2, height);
|
||||
}
|
||||
|
||||
// Base image if door was drawn
|
||||
if (direction == 1)
|
||||
{
|
||||
imageId += 2;
|
||||
sub_98197C(session, imageId, 0, 0, 2, 28, 29, height, 28, 2, height, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 2, 28, 29, height, 28, 2, height);
|
||||
}
|
||||
else if (direction == 2)
|
||||
{
|
||||
imageId += 4;
|
||||
sub_98197C(session, imageId, 0, 0, 28, 2, 29, height, 2, 28, height, rotation);
|
||||
sub_98197C(session, imageId, 0, 0, 28, 2, 29, height, 2, 28, height);
|
||||
}
|
||||
|
||||
paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0);
|
||||
|
|
|
@ -61,13 +61,13 @@ static void shop_paint_setup(
|
|||
{
|
||||
uint32 foundationImageId =
|
||||
((direction & 1) ? SPR_FLOOR_PLANKS_90_DEG : SPR_FLOOR_PLANKS) | session->TrackColours[SCHEME_3];
|
||||
sub_98197C(session, foundationImageId, 0, 0, 28, 28, 45, height, 2, 2, height, get_current_rotation());
|
||||
sub_98197C(session, foundationImageId, 0, 0, 28, 28, 45, height, 2, 2, height);
|
||||
|
||||
sub_98199C(session, imageId, 0, 0, 28, 28, 45, height, 2, 2, height, get_current_rotation());
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 28, 28, 45, height, 2, 2, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 28, 28, 45, height, 2, 2, height);
|
||||
}
|
||||
|
||||
paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0);
|
||||
|
|
|
@ -50,8 +50,7 @@ static void paint_3d_cinema_structure(paint_session * session, uint8 rideIndex,
|
|||
}
|
||||
|
||||
uint32 imageId = (rideEntry->vehicles[0].base_image_id + direction) | imageColourFlags;
|
||||
sub_98197C(session, imageId, xOffset, yOffset, 24, 24, 47, height + 3, xOffset + 16, yOffset + 16, height + 3,
|
||||
get_current_rotation());
|
||||
sub_98197C(session, imageId, xOffset, yOffset, 24, 24, 47, height + 3, xOffset + 16, yOffset + 16, height + 3);
|
||||
|
||||
session->CurrentlyDrawnItem = savedTileElement;
|
||||
session->InteractionType = VIEWPORT_INTERACTION_ITEM_RIDE;
|
||||
|
|
|
@ -59,7 +59,7 @@ static void paint_enterprise_structure(
|
|||
}
|
||||
|
||||
uint32 imageId = (baseImageId + imageOffset) | imageColourFlags;
|
||||
sub_98197C(session, imageId, xOffset, yOffset, 24, 24, 48, height, 0, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, xOffset, yOffset, 24, 24, 48, height, 0, 0, height);
|
||||
|
||||
rct_drawpixelinfo * dpi = session->Unk140E9A8;
|
||||
|
||||
|
|
|
@ -143,20 +143,20 @@ static void paint_go_karts_track_flat(
|
|||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
imageId = SPR_GO_KARTS_FLAT_SW_NE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 28, 1, height, 0, 2, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 28, 1, height, 0, 2, height);
|
||||
|
||||
imageId = SPR_GO_KARTS_FLAT_FRONT_SW_NE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 3, height, 0, 29, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 3, height, 0, 29, height + 2);
|
||||
|
||||
paint_util_push_tunnel_left(session, height, TUNNEL_6);
|
||||
}
|
||||
else
|
||||
{
|
||||
imageId = SPR_GO_KARTS_FLAT_NW_SE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 28, 32, 1, height, 2, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 28, 32, 1, height, 2, 0, height);
|
||||
|
||||
imageId = SPR_GO_KARTS_FLAT_FRONT_NW_SE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 3, height, 29, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 3, height, 29, 0, height + 2);
|
||||
|
||||
paint_util_push_tunnel_right(session, height, TUNNEL_6);
|
||||
}
|
||||
|
@ -182,21 +182,21 @@ static void paint_go_karts_track_25_deg_up(
|
|||
imageId = go_karts_track_pieces_25_deg_up[direction][0] | session->TrackColours[SCHEME_TRACK];
|
||||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
ps = sub_98197C(session, imageId, 0, 0, 32, 28, 1, height, 0, 2, height, get_current_rotation());
|
||||
ps = sub_98197C(session, imageId, 0, 0, 32, 28, 1, height, 0, 2, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
ps = sub_98197C(session, imageId, 0, 0, 28, 32, 1, height, 2, 0, height, get_current_rotation());
|
||||
ps = sub_98197C(session, imageId, 0, 0, 28, 32, 1, height, 2, 0, height);
|
||||
}
|
||||
|
||||
imageId = go_karts_track_pieces_25_deg_up[direction][1] | session->TrackColours[SCHEME_TRACK];
|
||||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 11, height, 0, 29, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 11, height, 0, 29, height + 2);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 11, height, 29, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 11, height, 29, 0, height + 2);
|
||||
}
|
||||
|
||||
session->WoodenSupportsPrependTo = ps;
|
||||
|
@ -240,21 +240,21 @@ static void paint_go_karts_track_flat_to_25_deg_up(
|
|||
imageId = go_karts_track_pieces_flat_to_25_deg_up[direction][0] | session->TrackColours[SCHEME_TRACK];
|
||||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
ps = sub_98197C(session, imageId, 0, 0, 32, 28, 1, height, 0, 2, height, get_current_rotation());
|
||||
ps = sub_98197C(session, imageId, 0, 0, 32, 28, 1, height, 0, 2, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
ps = sub_98197C(session, imageId, 0, 0, 28, 32, 1, height, 2, 0, height, get_current_rotation());
|
||||
ps = sub_98197C(session, imageId, 0, 0, 28, 32, 1, height, 2, 0, height);
|
||||
}
|
||||
|
||||
imageId = go_karts_track_pieces_flat_to_25_deg_up[direction][1] | session->TrackColours[SCHEME_TRACK];
|
||||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 11, height, 0, 29, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 11, height, 0, 29, height + 2);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 11, height, 29, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 11, height, 29, 0, height + 2);
|
||||
}
|
||||
|
||||
session->WoodenSupportsPrependTo = ps;
|
||||
|
@ -298,21 +298,21 @@ static void paint_go_karts_track_25_deg_up_to_flat(
|
|||
imageId = go_karts_track_pieces_25_deg_up_to_flat[direction][0] | session->TrackColours[SCHEME_TRACK];
|
||||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
ps = sub_98197C(session, imageId, 0, 0, 32, 28, 1, height, 0, 2, height, get_current_rotation());
|
||||
ps = sub_98197C(session, imageId, 0, 0, 32, 28, 1, height, 0, 2, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
ps = sub_98197C(session, imageId, 0, 0, 28, 32, 1, height, 2, 0, height, get_current_rotation());
|
||||
ps = sub_98197C(session, imageId, 0, 0, 28, 32, 1, height, 2, 0, height);
|
||||
}
|
||||
|
||||
imageId = go_karts_track_pieces_25_deg_up_to_flat[direction][1] | session->TrackColours[SCHEME_TRACK];
|
||||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 11, height, 0, 29, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 11, height, 0, 29, height + 2);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 11, height, 29, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 11, height, 29, 0, height + 2);
|
||||
}
|
||||
|
||||
session->WoodenSupportsPrependTo = ps;
|
||||
|
@ -402,11 +402,11 @@ static void paint_go_karts_station(
|
|||
imageId = sprites[direction][0] | session->TrackColours[SCHEME_TRACK];
|
||||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 32, 28, 1, height, 0, 2, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 28, 1, height, 0, 2, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 28, 32, 1, height, 2, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 28, 32, 1, height, 2, 0, height);
|
||||
}
|
||||
|
||||
if (direction == 0 || direction == 2)
|
||||
|
@ -423,13 +423,13 @@ static void paint_go_karts_station(
|
|||
imageId = sprites[direction][1] | session->TrackColours[SCHEME_TRACK];
|
||||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 3, height, 0, 29, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 3, height, 0, 29, height + 2);
|
||||
|
||||
paint_util_push_tunnel_left(session, height, TUNNEL_6);
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 3, height, 29, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 3, height, 29, 0, height + 2);
|
||||
|
||||
paint_util_push_tunnel_right(session, height, TUNNEL_6);
|
||||
}
|
||||
|
@ -454,34 +454,34 @@ static void paint_go_karts_station(
|
|||
case 0:
|
||||
imageId = (hasGreenLight ? SPR_GO_KARTS_START_POLE_GREEN_SW_NE : SPR_GO_KARTS_START_POLE_RED_SW_NE) |
|
||||
session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 3, 3, 13, height, 1, 1, height + 4, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 3, 3, 13, height, 1, 1, height + 4);
|
||||
|
||||
imageId = (hasGreenLight ? SPR_GO_KARTS_START_LIGHTS_GREEN_SW_NE : SPR_GO_KARTS_START_LIGHTS_RED_SW_NE) |
|
||||
session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 3, 3, 13, height, 1, 28, height + 4, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 3, 3, 13, height, 1, 28, height + 4);
|
||||
break;
|
||||
case 1:
|
||||
imageId = SPR_GO_KARTS_START_POLE_NW_SE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 3, 3, 13, height, 1, 28, height + 4, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 3, 3, 13, height, 1, 28, height + 4);
|
||||
|
||||
imageId = SPR_GO_KARTS_START_LIGHTS_NW_SE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 3, 3, 13, height, 28, 28, height + 4, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 3, 3, 13, height, 28, 28, height + 4);
|
||||
break;
|
||||
case 2:
|
||||
imageId = SPR_GO_KARTS_START_POLE_NE_SW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 3, 3, 13, height, 28, 1, height + 4, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 3, 3, 13, height, 28, 1, height + 4);
|
||||
|
||||
imageId = SPR_GO_KARTS_START_LIGHTS_NE_SW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 3, 3, 13, height, 28, 28, height + 4, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 3, 3, 13, height, 28, 28, height + 4);
|
||||
break;
|
||||
case 3:
|
||||
imageId = (hasGreenLight ? SPR_GO_KARTS_START_POLE_GREEN_SE_NW : SPR_GO_KARTS_START_POLE_RED_SE_NW) |
|
||||
session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 3, 3, 13, height, 1, 1, height + 4, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 3, 3, 13, height, 1, 1, height + 4);
|
||||
|
||||
imageId = (hasGreenLight ? SPR_GO_KARTS_START_LIGHTS_GREEN_SE_NW : SPR_GO_KARTS_START_LIGHTS_RED_SE_NW) |
|
||||
session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 3, 3, 13, height, 28, 1, height + 4, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 3, 3, 13, height, 28, 1, height + 4);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -507,40 +507,40 @@ static void paint_go_karts_track_left_quarter_turn_1_tile(
|
|||
{
|
||||
case 0:
|
||||
imageId = SPR_GO_KARTS_FLAT_QUARTER_TURN_1_TILE_NW_NE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 28, 1, height, 0, 2, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 28, 1, height, 0, 2, height);
|
||||
|
||||
imageId = SPR_GO_KARTS_FLAT_QUARTER_TURN_1_TILE_EDGE_A_NW_NE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 1, 3, height, 29, 2, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 1, 3, height, 29, 2, height + 2);
|
||||
|
||||
imageId = SPR_GO_KARTS_FLAT_QUARTER_TURN_1_TILE_EDGE_B_NW_NE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 16, 1, 3, height, 14, 29, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 16, 1, 3, height, 14, 29, height + 2);
|
||||
break;
|
||||
case 1:
|
||||
imageId = SPR_GO_KARTS_FLAT_QUARTER_TURN_1_TILE_NE_SE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 30, 30, 1, height, 0, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 30, 30, 1, height, 0, 0, height);
|
||||
|
||||
imageId = SPR_GO_KARTS_FLAT_QUARTER_TURN_1_TILE_EDGE_A_NE_SE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 16, 1, 3, height, 2, 29, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 16, 1, 3, height, 2, 29, height + 2);
|
||||
|
||||
imageId = SPR_GO_KARTS_FLAT_QUARTER_TURN_1_TILE_EDGE_B_NE_SE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 16, 3, height, 29, 2, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 16, 3, height, 29, 2, height + 2);
|
||||
break;
|
||||
case 2:
|
||||
imageId = SPR_GO_KARTS_FLAT_QUARTER_TURN_1_TILE_SE_SW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 28, 32, 1, height, 2, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 28, 32, 1, height, 2, 0, height);
|
||||
|
||||
imageId = SPR_GO_KARTS_FLAT_QUARTER_TURN_1_TILE_EDGE_A_SE_SW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 1, 3, height, 2, 2, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 1, 3, height, 2, 2, height + 2);
|
||||
|
||||
imageId = SPR_GO_KARTS_FLAT_QUARTER_TURN_1_TILE_EDGE_B_SE_SW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 16, 3, height, 29, 14, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 16, 3, height, 29, 14, height + 2);
|
||||
break;
|
||||
case 3:
|
||||
imageId = SPR_GO_KARTS_FLAT_QUARTER_TURN_1_TILE_SW_NW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 32, 1, height, 0, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 32, 1, height, 0, 0, height);
|
||||
|
||||
imageId = SPR_GO_KARTS_FLAT_QUARTER_TURN_1_TILE_EDGE_A_SW_NW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 1, 3, height, 29, 29, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 1, 3, height, 29, 29, height + 2);
|
||||
|
||||
// The empty sprite isn't drawn
|
||||
break;
|
||||
|
|
|
@ -47,11 +47,11 @@ void vehicle_visual_launched_freefall(paint_session * session, sint32 x, sint32
|
|||
const uint8 rotation = get_current_rotation();
|
||||
// Draw back:
|
||||
image_id = (baseImage_id + 2) | SPRITE_ID_PALETTE_COLOUR_2(vehicle->colours.body_colour, vehicle->colours.trim_colour);
|
||||
sub_98197C(session, image_id, 0, 0, 2, 2, 41, z, -11, -11, z + 1, rotation);
|
||||
sub_98197C(session, image_id, 0, 0, 2, 2, 41, z, -11, -11, z + 1);
|
||||
|
||||
// Draw front:
|
||||
image_id = (baseImage_id + 1) | SPRITE_ID_PALETTE_COLOUR_2(vehicle->colours.body_colour, vehicle->colours.trim_colour);
|
||||
sub_98197C(session, image_id, 0, 0, 16, 16, 41, z, -5, -5, z + 1, rotation);
|
||||
sub_98197C(session, image_id, 0, 0, 16, 16, 41, z, -5, -5, z + 1);
|
||||
|
||||
// Draw peeps:
|
||||
if (session->Unk140E9A8->zoom_level < 2)
|
||||
|
@ -108,7 +108,7 @@ static void paint_launched_freefall_base(
|
|||
wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session->TrackColours[SCHEME_MISC], nullptr);
|
||||
|
||||
uint32 imageId = SPR_FLOOR_METAL | session->TrackColours[SCHEME_SUPPORTS];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 32, 1, height, 0, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 32, 1, height, 0, 0, height);
|
||||
|
||||
track_paint_util_paint_fences(session, edges, position, tileElement, ride, session->TrackColours[SCHEME_TRACK], height,
|
||||
launched_freefall_fence_sprites, get_current_rotation());
|
||||
|
@ -116,15 +116,15 @@ static void paint_launched_freefall_base(
|
|||
if (trackSequence == 0)
|
||||
{
|
||||
imageId = SPR_LAUNCHED_FREEFALL_TOWER_BASE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 27, height, 8, 8, height + 3, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 27, height, 8, 8, height + 3);
|
||||
|
||||
height += 32;
|
||||
imageId = SPR_LAUNCHED_FREEFALL_TOWER_SEGMENT | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 30, height, 8, 8, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 30, height, 8, 8, height);
|
||||
|
||||
height += 32;
|
||||
imageId = SPR_LAUNCHED_FREEFALL_TOWER_SEGMENT | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 30, height, 8, 8, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 30, height, 8, 8, height);
|
||||
|
||||
paint_util_set_vertical_tunnel(session, height + 32);
|
||||
|
||||
|
@ -182,7 +182,7 @@ static void paint_launched_freefall_tower_section(
|
|||
}
|
||||
|
||||
uint32 imageId = SPR_LAUNCHED_FREEFALL_TOWER_SEGMENT | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 30, height, 8, 8, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 30, height, 8, 8, height);
|
||||
|
||||
const rct_tile_element * nextTileElement = tileElement + 1;
|
||||
if (tile_element_is_last_for_tile(tileElement) || tileElement->clearance_height != nextTileElement->base_height)
|
||||
|
|
|
@ -85,8 +85,9 @@ static void paint_magic_carpet_frame(paint_session * session, uint8 plane, uint8
|
|||
imageId |= session->TrackColours[SCHEME_TRACK];
|
||||
if (plane == PLANE_BACK)
|
||||
{
|
||||
sub_98197C(session, imageId, (sint8)offset.x, (sint8)offset.y, bbSize.x, bbSize.y, 127, offset.z, bbOffset.x,
|
||||
bbOffset.y, bbOffset.z, get_current_rotation());
|
||||
sub_98197C(
|
||||
session, imageId, (sint8)offset.x, (sint8)offset.y, bbSize.x, bbSize.y, 127, offset.z, bbOffset.x, bbOffset.y,
|
||||
bbOffset.z);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
@ -85,32 +85,32 @@ static void paint_motionsimulator_vehicle(
|
|||
case 0:
|
||||
// Simulator
|
||||
imageId = simulatorImageId;
|
||||
sub_98197C(session, imageId, offsetX, offsetY, 20, 20, 44, offsetZ, offsetX, offsetY, offsetZ, currentRotation);
|
||||
sub_98197C(session, imageId, offsetX, offsetY, 20, 20, 44, offsetZ, offsetX, offsetY, offsetZ);
|
||||
// Stairs
|
||||
imageId = (SPR_MOTION_SIMULATOR_STAIRS_R0 + direction) | session->TrackColours[SCHEME_MISC];
|
||||
sub_98199C(session, imageId, offsetX, offsetY, 20, 20, 44, offsetZ, offsetX, offsetY, offsetZ, currentRotation);
|
||||
// Stairs (rail)
|
||||
imageId = (SPR_MOTION_SIMULATOR_STAIRS_RAIL_R0 + direction) | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, offsetX, offsetY, 20, 2, 44, offsetZ, offsetX, offsetY + 32, offsetZ, currentRotation);
|
||||
sub_98197C(session, imageId, offsetX, offsetY, 20, 2, 44, offsetZ, offsetX, offsetY + 32, offsetZ);
|
||||
break;
|
||||
case 1:
|
||||
// Simulator
|
||||
imageId = simulatorImageId;
|
||||
sub_98197C(session, imageId, offsetX, offsetY, 20, 20, 44, offsetZ, offsetX, offsetY, offsetZ, currentRotation);
|
||||
sub_98197C(session, imageId, offsetX, offsetY, 20, 20, 44, offsetZ, offsetX, offsetY, offsetZ);
|
||||
// Stairs
|
||||
imageId = (SPR_MOTION_SIMULATOR_STAIRS_R0 + direction) | session->TrackColours[SCHEME_MISC];
|
||||
sub_98199C(session, imageId, offsetX, offsetY, 20, 20, 44, offsetZ, offsetX, offsetY, offsetZ, currentRotation);
|
||||
// Stairs (rail)
|
||||
imageId = (SPR_MOTION_SIMULATOR_STAIRS_RAIL_R0 + direction) | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, offsetX, offsetY, 2, 20, 44, offsetZ, offsetX + 34, offsetY, offsetZ, currentRotation);
|
||||
sub_98197C(session, imageId, offsetX, offsetY, 2, 20, 44, offsetZ, offsetX + 34, offsetY, offsetZ);
|
||||
break;
|
||||
case 2:
|
||||
// Stairs (rail)
|
||||
imageId = (SPR_MOTION_SIMULATOR_STAIRS_RAIL_R0 + direction) | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, offsetX, offsetY, 20, 2, 44, offsetZ, offsetX, offsetY - 10, offsetZ, currentRotation);
|
||||
sub_98197C(session, imageId, offsetX, offsetY, 20, 2, 44, offsetZ, offsetX, offsetY - 10, offsetZ);
|
||||
// Stairs
|
||||
imageId = (SPR_MOTION_SIMULATOR_STAIRS_R0 + direction) | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, offsetX, offsetY, 20, 20, 44, offsetZ, offsetX, offsetY + 5, offsetZ, currentRotation);
|
||||
sub_98197C(session, imageId, offsetX, offsetY, 20, 20, 44, offsetZ, offsetX, offsetY + 5, offsetZ);
|
||||
// Simulator
|
||||
imageId = simulatorImageId;
|
||||
sub_98199C(session, imageId, offsetX, offsetY, 20, 20, 44, offsetZ, offsetX, offsetY + 5, offsetZ, currentRotation);
|
||||
|
@ -118,10 +118,10 @@ static void paint_motionsimulator_vehicle(
|
|||
case 3:
|
||||
// Stairs (rail)
|
||||
imageId = (SPR_MOTION_SIMULATOR_STAIRS_RAIL_R0 + direction) | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, offsetX, offsetY, 2, 20, 44, offsetZ, offsetX - 10, offsetY, offsetZ, currentRotation);
|
||||
sub_98197C(session, imageId, offsetX, offsetY, 2, 20, 44, offsetZ, offsetX - 10, offsetY, offsetZ);
|
||||
// Stairs
|
||||
imageId = (SPR_MOTION_SIMULATOR_STAIRS_R0 + direction) | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, offsetX, offsetY, 20, 20, 44, offsetZ, offsetX + 5, offsetY, offsetZ, currentRotation);
|
||||
sub_98197C(session, imageId, offsetX, offsetY, 20, 20, 44, offsetZ, offsetX + 5, offsetY, offsetZ);
|
||||
// Simulator
|
||||
imageId = simulatorImageId;
|
||||
sub_98199C(session, imageId, offsetX, offsetY, 20, 20, 44, offsetZ, offsetX + 5, offsetY, offsetZ, currentRotation);
|
||||
|
|
|
@ -112,8 +112,9 @@ static void paint_pirate_ship_structure(paint_session * session, Ride * ride, ui
|
|||
pirate_ship_bound_box bounds = pirate_ship_data[direction];
|
||||
|
||||
imageId = pirate_ship_frame_sprites[(direction & 1)][0] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, xOffset, yOffset, bounds.length_x, bounds.length_y, 80, height, bounds.offset_x,
|
||||
bounds.offset_y, height, get_current_rotation());
|
||||
sub_98197C(
|
||||
session, imageId, xOffset, yOffset, bounds.length_x, bounds.length_y, 80, height, bounds.offset_x, bounds.offset_y,
|
||||
height);
|
||||
|
||||
imageId = baseImageId | imageColourFlags;
|
||||
sub_98199C(session, imageId, xOffset, yOffset, bounds.length_x, bounds.length_y, 80, height, bounds.offset_x,
|
||||
|
|
|
@ -50,11 +50,11 @@ void vehicle_visual_roto_drop(paint_session * session, sint32 x, sint32 imageDir
|
|||
const uint8 rotation = get_current_rotation();
|
||||
// Draw back:
|
||||
image_id = baseImage_id | SPRITE_ID_PALETTE_COLOUR_2(vehicle->colours.body_colour, vehicle->colours.trim_colour);
|
||||
sub_98197C(session, image_id, 0, 0, 2, 2, 41, z, -11, -11, z + 1, rotation);
|
||||
sub_98197C(session, image_id, 0, 0, 2, 2, 41, z, -11, -11, z + 1);
|
||||
|
||||
// Draw front:
|
||||
image_id = (baseImage_id + 4) | SPRITE_ID_PALETTE_COLOUR_2(vehicle->colours.body_colour, vehicle->colours.trim_colour);
|
||||
sub_98197C(session, image_id, 0, 0, 16, 16, 41, z, -5, -5, z + 1, rotation);
|
||||
sub_98197C(session, image_id, 0, 0, 16, 16, 41, z, -5, -5, z + 1);
|
||||
|
||||
uint8 riding_peep_sprites[64];
|
||||
memset(riding_peep_sprites, 0xFF, sizeof(riding_peep_sprites));
|
||||
|
@ -108,7 +108,7 @@ static void paint_roto_drop_base(
|
|||
wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session->TrackColours[SCHEME_MISC], nullptr);
|
||||
|
||||
uint32 imageId = SPR_FLOOR_METAL_B | session->TrackColours[SCHEME_SUPPORTS];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 32, 1, height, 0, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 32, 1, height, 0, 0, height);
|
||||
|
||||
track_paint_util_paint_fences(session, edges, position, tileElement, ride, session->TrackColours[SCHEME_TRACK], height,
|
||||
fenceSpritesMetalB, get_current_rotation());
|
||||
|
@ -117,15 +117,15 @@ static void paint_roto_drop_base(
|
|||
{
|
||||
imageId =
|
||||
(direction & 1 ? SPR_ROTO_DROP_TOWER_BASE_90_DEG : SPR_ROTO_DROP_TOWER_BASE) | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 27, height, 8, 8, height + 3, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 27, height, 8, 8, height + 3);
|
||||
|
||||
imageId = (direction & 1 ? SPR_ROTO_DROP_TOWER_BASE_SEGMENT_90_DEG : SPR_ROTO_DROP_TOWER_BASE_SEGMENT) |
|
||||
session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 30, height + 32, 8, 8, height + 32, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 30, height + 32, 8, 8, height + 32);
|
||||
|
||||
imageId = (direction & 1 ? SPR_ROTO_DROP_TOWER_BASE_SEGMENT_90_DEG : SPR_ROTO_DROP_TOWER_BASE_SEGMENT) |
|
||||
session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 30, height + 64, 8, 8, height + 64, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 30, height + 64, 8, 8, height + 64);
|
||||
|
||||
paint_util_set_vertical_tunnel(session, height + 96);
|
||||
paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0);
|
||||
|
@ -187,7 +187,7 @@ static void paint_roto_drop_tower_section(
|
|||
}
|
||||
|
||||
uint32 imageId = SPR_ROTO_DROP_TOWER_SEGMENT | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 30, height, 8, 8, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 30, height, 8, 8, height);
|
||||
|
||||
const rct_tile_element * nextTileElement = tileElement + 1;
|
||||
if (tile_element_is_last_for_tile(tileElement) || tileElement->clearance_height != nextTileElement->base_height)
|
||||
|
|
|
@ -105,15 +105,17 @@ static void paint_swinging_inverter_ship_structure(paint_session * session, Ride
|
|||
|
||||
if (direction & 2)
|
||||
{
|
||||
sub_98197C(session, vehicleImageId, xOffset, yOffset, boundBox.length_x, boundBox.length_y, 127, height,
|
||||
boundBox.offset_x, boundBox.offset_y, height, get_current_rotation());
|
||||
sub_98197C(
|
||||
session, vehicleImageId, xOffset, yOffset, boundBox.length_x, boundBox.length_y, 127, height, boundBox.offset_x,
|
||||
boundBox.offset_y, height);
|
||||
sub_98199C(session, frameImageId, xOffset, yOffset, boundBox.length_x, boundBox.length_y, 127, height,
|
||||
boundBox.offset_x, boundBox.offset_y, height, get_current_rotation());
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_98197C(session, frameImageId, xOffset, yOffset, boundBox.length_x, boundBox.length_y, 127, height,
|
||||
boundBox.offset_x, boundBox.offset_y, height, get_current_rotation());
|
||||
sub_98197C(
|
||||
session, frameImageId, xOffset, yOffset, boundBox.length_x, boundBox.length_y, 127, height, boundBox.offset_x,
|
||||
boundBox.offset_y, height);
|
||||
sub_98199C(session, vehicleImageId, xOffset, yOffset, boundBox.length_x, boundBox.length_y, 127, height,
|
||||
boundBox.offset_x, boundBox.offset_y, height, get_current_rotation());
|
||||
}
|
||||
|
|
|
@ -101,8 +101,7 @@ static void top_spin_paint_vehicle(
|
|||
image_id += rideEntry->vehicles[0].base_image_id;
|
||||
// Left back bottom support
|
||||
image_id += 572;
|
||||
sub_98197C(session, image_id, al, cl, lengthX, lengthY, 90, height, boundBoxOffsetX, boundBoxOffsetY, boundBoxOffsetZ,
|
||||
rotation);
|
||||
sub_98197C(session, image_id, al, cl, lengthX, lengthY, 90, height, boundBoxOffsetX, boundBoxOffsetY, boundBoxOffsetZ);
|
||||
|
||||
image_id = session->TrackColours[SCHEME_MISC];
|
||||
if (image_id == IMAGE_TYPE_REMAP)
|
||||
|
|
|
@ -63,8 +63,7 @@ static void paint_twist_structure(paint_session * session, Ride * ride, uint8 di
|
|||
|
||||
uint32 structureFrameNum = frameNum % 24;
|
||||
uint32 imageId = (baseImageId + structureFrameNum) | imageColourFlags;
|
||||
sub_98197C(session, imageId, xOffset, yOffset, 24, 24, 48, height, xOffset + 16, yOffset + 16, height,
|
||||
get_current_rotation());
|
||||
sub_98197C(session, imageId, xOffset, yOffset, 24, 24, 48, height, xOffset + 16, yOffset + 16, height);
|
||||
|
||||
rct_drawpixelinfo * dpi = session->Unk140E9A8;
|
||||
|
||||
|
@ -114,12 +113,12 @@ static void paint_twist(
|
|||
if (track_paint_util_has_fence(EDGE_SW, position, tileElement, ride, get_current_rotation()))
|
||||
{
|
||||
imageId = SPR_FENCE_ROPE_SW | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 28, 7, height, 29, 0, height + 3, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 28, 7, height, 29, 0, height + 3);
|
||||
}
|
||||
if (track_paint_util_has_fence(EDGE_SE, position, tileElement, ride, get_current_rotation()))
|
||||
{
|
||||
imageId = SPR_FENCE_ROPE_SE | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, 0, 0, 28, 1, 7, height, 0, 29, height + 3, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 28, 1, 7, height, 0, 29, height + 3);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
|
|
|
@ -202,11 +202,11 @@ static void chairlift_paint_station_ne_sw(
|
|||
if (!isStart && !isEnd)
|
||||
{
|
||||
imageId = ((direction == 0) ? SPR_20502 : SPR_20504) | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 6, 2, height, 0, 13, height + 28, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 6, 2, height, 0, 13, height + 28);
|
||||
}
|
||||
|
||||
imageId = SPR_FLOOR_METAL | session->TrackColours[SCHEME_SUPPORTS];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 32, 1, height, 0, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 32, 1, height, 0, 0, height);
|
||||
|
||||
bool hasFence = track_paint_util_has_fence(EDGE_NW, pos, tileElement, ride, get_current_rotation());
|
||||
if (hasFence)
|
||||
|
@ -226,7 +226,7 @@ static void chairlift_paint_station_ne_sw(
|
|||
if (hasFence)
|
||||
{
|
||||
imageId = SPR_FENCE_METAL_SE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 27, height, 0, 30, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 27, height, 0, 30, height + 2);
|
||||
}
|
||||
track_paint_util_draw_station_covers(session, EDGE_SE, hasFence, entranceStyle, direction, height);
|
||||
|
||||
|
@ -235,10 +235,10 @@ static void chairlift_paint_station_ne_sw(
|
|||
if ((direction == 0 && isStart) || (direction == 2 && isEnd))
|
||||
{
|
||||
imageId = SPR_FENCE_METAL_SW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 28, 27, height, 30, 2, height + 4, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 28, 27, height, 30, 2, height + 4);
|
||||
|
||||
imageId = chairlift_bullwheel_frames[ride->chairlift_bullwheel_rotation / 16384] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 4, 4, 26, height, 14, 14, height + 4, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 4, 4, 26, height, 14, 14, height + 4);
|
||||
|
||||
imageId = SPR_CHAIRLIFT_STATION_END_CAP_NE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98199C(session, imageId, 0, 0, 4, 4, 26, height, 14, 14, height + 4, get_current_rotation());
|
||||
|
@ -248,7 +248,7 @@ static void chairlift_paint_station_ne_sw(
|
|||
else if ((direction == 2 && isStart) || (direction == 0 && isEnd))
|
||||
{
|
||||
imageId = chairlift_bullwheel_frames[ride->chairlift_bullwheel_rotation / 16384] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 4, 4, 26, height, 14, 14, height + 4, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 4, 4, 26, height, 14, 14, height + 4);
|
||||
|
||||
imageId = SPR_CHAIRLIFT_STATION_END_CAP_SW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98199C(session, imageId, 0, 0, 4, 4, 26, height, 14, 14, height + 4, get_current_rotation());
|
||||
|
@ -259,14 +259,13 @@ static void chairlift_paint_station_ne_sw(
|
|||
if (drawBackColumn)
|
||||
{
|
||||
imageId = SPR_CHAIRLIFT_STATION_COLUMN_NE_SW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 16, 1, 1, 7, height + 2, 1, 16, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 16, 1, 1, 7, height + 2, 1, 16, height + 2);
|
||||
}
|
||||
|
||||
if (drawFrontColumn)
|
||||
{
|
||||
imageId = SPR_CHAIRLIFT_STATION_COLUMN_NE_SW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 30, 16, 1, 1, 7, height + 2, 1, 16, height + 2,
|
||||
get_current_rotation()); // bound offset x is wrong?
|
||||
sub_98197C(session, imageId, 30, 16, 1, 1, 7, height + 2, 1, 16, height + 2); // bound offset x is wrong?
|
||||
}
|
||||
|
||||
paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0);
|
||||
|
@ -298,11 +297,11 @@ static void chairlift_paint_station_se_nw(
|
|||
if (!isStart && !isEnd)
|
||||
{
|
||||
imageId = ((direction == 1) ? SPR_20503 : SPR_20505) | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 6, 32, 2, height, 13, 0, height + 28, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 6, 32, 2, height, 13, 0, height + 28);
|
||||
}
|
||||
|
||||
imageId = SPR_FLOOR_METAL | session->TrackColours[SCHEME_SUPPORTS];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 32, 1, height, 0, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 32, 1, height, 0, 0, height);
|
||||
|
||||
bool hasFence = track_paint_util_has_fence(EDGE_NE, pos, tileElement, ride, get_current_rotation());
|
||||
if (hasFence)
|
||||
|
@ -322,7 +321,7 @@ static void chairlift_paint_station_se_nw(
|
|||
if (hasFence)
|
||||
{
|
||||
imageId = SPR_FENCE_METAL_SW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 27, height, 30, 0, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 27, height, 30, 0, height + 2);
|
||||
}
|
||||
track_paint_util_draw_station_covers(session, EDGE_SW, hasFence, entranceStyle, direction, height);
|
||||
|
||||
|
@ -331,7 +330,7 @@ static void chairlift_paint_station_se_nw(
|
|||
if ((direction == 1 && isStart) || (direction == 3 && isEnd))
|
||||
{
|
||||
imageId = chairlift_bullwheel_frames[ride->chairlift_bullwheel_rotation / 16384] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 4, 4, 26, height, 14, 14, height + 4, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 4, 4, 26, height, 14, 14, height + 4);
|
||||
|
||||
imageId = SPR_CHAIRLIFT_STATION_END_CAP_SE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98199C(session, imageId, 0, 0, 4, 4, 26, height, 14, 14, height + 4, get_current_rotation());
|
||||
|
@ -341,10 +340,10 @@ static void chairlift_paint_station_se_nw(
|
|||
else if ((direction == 3 && isStart) || (direction == 1 && isEnd))
|
||||
{
|
||||
imageId = SPR_FENCE_METAL_SE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 28, 1, 27, height, 2, 30, height + 4, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 28, 1, 27, height, 2, 30, height + 4);
|
||||
|
||||
imageId = chairlift_bullwheel_frames[ride->chairlift_bullwheel_rotation / 16384] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 4, 4, 26, height, 14, 14, height + 4, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 4, 4, 26, height, 14, 14, height + 4);
|
||||
|
||||
imageId = SPR_CHAIRLIFT_STATION_END_CAP_NW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98199C(session, imageId, 0, 0, 4, 4, 26, height, 14, 14, height + 4, get_current_rotation());
|
||||
|
@ -355,14 +354,13 @@ static void chairlift_paint_station_se_nw(
|
|||
if (drawLeftColumn)
|
||||
{
|
||||
imageId = SPR_CHAIRLIFT_STATION_COLUMN_SE_NW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 16, 0, 1, 1, 7, height + 2, 16, 1, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 16, 0, 1, 1, 7, height + 2, 16, 1, height + 2);
|
||||
}
|
||||
|
||||
if (drawRightColumn)
|
||||
{
|
||||
imageId = SPR_CHAIRLIFT_STATION_COLUMN_SE_NW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 16, 30, 1, 1, 7, height + 2, 16, 1, height + 2,
|
||||
get_current_rotation()); // bound offset x is wrong?
|
||||
sub_98197C(session, imageId, 16, 30, 1, 1, 7, height + 2, 16, 1, height + 2); // bound offset x is wrong?
|
||||
|
||||
paint_util_push_tunnel_right(session, height, TUNNEL_6);
|
||||
}
|
||||
|
@ -402,13 +400,13 @@ static void chairlift_paint_flat(
|
|||
if (direction & 1)
|
||||
{
|
||||
imageId = SPR_CHAIRLIFT_CABLE_FLAT_SE_NW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 6, 32, 2, height, 13, 0, height + 28, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 6, 32, 2, height, 13, 0, height + 28);
|
||||
paint_util_push_tunnel_right(session, height, TUNNEL_6);
|
||||
}
|
||||
else
|
||||
{
|
||||
imageId = SPR_CHAIRLIFT_CABLE_FLAT_SW_NE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 6, 2, height, 0, 13, height + 28, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 6, 2, height, 0, 13, height + 28);
|
||||
paint_util_push_tunnel_left(session, height, TUNNEL_6);
|
||||
}
|
||||
|
||||
|
@ -431,25 +429,25 @@ static void chairlift_paint_25_deg_up(
|
|||
{
|
||||
case 0:
|
||||
imageId = SPR_CHAIRLIFT_CABLE_UP_SW_NE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 6, 2, height, 0, 13, height + 28, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 6, 2, height, 0, 13, height + 28);
|
||||
paint_util_push_tunnel_left(session, height - 8, TUNNEL_7);
|
||||
break;
|
||||
|
||||
case 1:
|
||||
imageId = SPR_CHAIRLIFT_CABLE_UP_NW_SE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 6, 32, 2, height, 13, 0, height + 28, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 6, 32, 2, height, 13, 0, height + 28);
|
||||
paint_util_push_tunnel_right(session, height + 8, TUNNEL_8);
|
||||
break;
|
||||
|
||||
case 2:
|
||||
imageId = SPR_CHAIRLIFT_CABLE_UP_NE_SW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 6, 2, height, 0, 13, height + 28, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 6, 2, height, 0, 13, height + 28);
|
||||
paint_util_push_tunnel_left(session, height + 8, TUNNEL_8);
|
||||
break;
|
||||
|
||||
case 3:
|
||||
imageId = SPR_CHAIRLIFT_CABLE_UP_SE_NW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 6, 32, 2, height, 13, 0, height + 28, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 6, 32, 2, height, 13, 0, height + 28);
|
||||
paint_util_push_tunnel_right(session, height - 8, TUNNEL_7);
|
||||
break;
|
||||
}
|
||||
|
@ -473,40 +471,40 @@ static void chairlift_paint_flat_to_25_deg_up(
|
|||
{
|
||||
case 0:
|
||||
imageId = SPR_20508 | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 6, 2, height, 0, 13, height + 28, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 6, 2, height, 0, 13, height + 28);
|
||||
|
||||
imageId = SPR_20520 | session->TrackColours[SCHEME_SUPPORTS];
|
||||
sub_98197C(session, imageId, 0, 0, 4, 4, 25, height, 14, 14, height + 1, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 4, 4, 25, height, 14, 14, height + 1);
|
||||
|
||||
paint_util_push_tunnel_left(session, height, TUNNEL_6);
|
||||
break;
|
||||
|
||||
case 1:
|
||||
imageId = SPR_20509 | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 6, 32, 2, height, 13, 0, height + 28, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 6, 32, 2, height, 13, 0, height + 28);
|
||||
|
||||
imageId = SPR_20521 | session->TrackColours[SCHEME_SUPPORTS];
|
||||
sub_98197C(session, imageId, 0, 0, 4, 4, 25, height, 14, 14, height + 1, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 4, 4, 25, height, 14, 14, height + 1);
|
||||
|
||||
paint_util_push_tunnel_right(session, height, TUNNEL_8);
|
||||
break;
|
||||
|
||||
case 2:
|
||||
imageId = SPR_20510 | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 6, 2, height, 0, 13, height + 28, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 6, 2, height, 0, 13, height + 28);
|
||||
|
||||
imageId = SPR_20522 | session->TrackColours[SCHEME_SUPPORTS];
|
||||
sub_98197C(session, imageId, 0, 0, 4, 4, 25, height, 14, 14, height + 1, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 4, 4, 25, height, 14, 14, height + 1);
|
||||
|
||||
paint_util_push_tunnel_left(session, height, TUNNEL_8);
|
||||
break;
|
||||
|
||||
case 3:
|
||||
imageId = SPR_20511 | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 6, 32, 2, height, 13, 0, height + 28, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 6, 32, 2, height, 13, 0, height + 28);
|
||||
|
||||
imageId = SPR_20523 | session->TrackColours[SCHEME_SUPPORTS];
|
||||
sub_98197C(session, imageId, 0, 0, 4, 4, 25, height, 14, 14, height + 1, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 4, 4, 25, height, 14, 14, height + 1);
|
||||
|
||||
paint_util_push_tunnel_right(session, height, TUNNEL_6);
|
||||
break;
|
||||
|
@ -532,40 +530,40 @@ static void chairlift_paint_25_deg_up_to_flat(
|
|||
{
|
||||
case 0:
|
||||
imageId = SPR_20512 | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 6, 2, height, 0, 13, height + 28, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 6, 2, height, 0, 13, height + 28);
|
||||
|
||||
imageId = SPR_20524 | session->TrackColours[SCHEME_SUPPORTS];
|
||||
sub_98197C(session, imageId, 0, 0, 4, 4, 25, height, 14, 14, height + 1, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 4, 4, 25, height, 14, 14, height + 1);
|
||||
|
||||
paint_util_push_tunnel_left(session, height - 8, TUNNEL_6);
|
||||
break;
|
||||
|
||||
case 1:
|
||||
imageId = SPR_20513 | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 6, 32, 2, height, 13, 0, height + 28, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 6, 32, 2, height, 13, 0, height + 28);
|
||||
|
||||
imageId = SPR_20525 | session->TrackColours[SCHEME_SUPPORTS];
|
||||
sub_98197C(session, imageId, 0, 0, 4, 4, 25, height, 14, 14, height + 1, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 4, 4, 25, height, 14, 14, height + 1);
|
||||
|
||||
paint_util_push_tunnel_right(session, height + 8, TUNNEL_14);
|
||||
break;
|
||||
|
||||
case 2:
|
||||
imageId = SPR_20514 | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 6, 2, height, 0, 13, height + 28, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 6, 2, height, 0, 13, height + 28);
|
||||
|
||||
imageId = SPR_20526 | session->TrackColours[SCHEME_SUPPORTS];
|
||||
sub_98197C(session, imageId, 0, 0, 4, 4, 25, height, 14, 14, height + 1, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 4, 4, 25, height, 14, 14, height + 1);
|
||||
|
||||
paint_util_push_tunnel_left(session, height + 8, TUNNEL_14);
|
||||
break;
|
||||
|
||||
case 3:
|
||||
imageId = SPR_20515 | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 6, 32, 2, height, 13, 0, height + 28, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 6, 32, 2, height, 13, 0, height + 28);
|
||||
|
||||
imageId = SPR_20527 | session->TrackColours[SCHEME_SUPPORTS];
|
||||
sub_98197C(session, imageId, 0, 0, 4, 4, 25, height, 14, 14, height + 1, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 4, 4, 25, height, 14, 14, height + 1);
|
||||
|
||||
paint_util_push_tunnel_right(session, height - 8, TUNNEL_6);
|
||||
break;
|
||||
|
@ -627,50 +625,50 @@ static void chairlift_paint_left_quarter_turn_1_tile(
|
|||
{
|
||||
case 0:
|
||||
imageId = SPR_CHAIRLIFT_CORNER_NW_SW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 16, 16, 2, height, 16, 0, height + 28, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 16, 16, 2, height, 16, 0, height + 28);
|
||||
|
||||
imageId = SPR_20532 | session->TrackColours[SCHEME_SUPPORTS];
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 27, height, 16, 4, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 27, height, 16, 4, height);
|
||||
|
||||
imageId = SPR_20536 | session->TrackColours[SCHEME_SUPPORTS];
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 27, height, 28, 4, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 27, height, 28, 4, height);
|
||||
|
||||
paint_util_push_tunnel_left(session, height, TUNNEL_6);
|
||||
break;
|
||||
|
||||
case 1:
|
||||
imageId = SPR_CHAIRLIFT_CORNER_NW_NE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 16, 16, 2, height, 0, 0, height + 28, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 16, 16, 2, height, 0, 0, height + 28);
|
||||
|
||||
imageId = SPR_20533 | session->TrackColours[SCHEME_SUPPORTS];
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 27, height, 16, 4, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 27, height, 16, 4, height);
|
||||
|
||||
imageId = SPR_20537 | session->TrackColours[SCHEME_SUPPORTS];
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 27, height, 4, 16, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 27, height, 4, 16, height);
|
||||
break;
|
||||
|
||||
case 2:
|
||||
imageId = SPR_CHAIRLIFT_CORNER_SE_NE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 16, 16, 2, height, 0, 16, height + 28, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 16, 16, 2, height, 0, 16, height + 28);
|
||||
|
||||
imageId = SPR_20534 | session->TrackColours[SCHEME_SUPPORTS];
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 27, height, 4, 16, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 27, height, 4, 16, height);
|
||||
|
||||
imageId = SPR_20538 | session->TrackColours[SCHEME_SUPPORTS];
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 27, height, 16, 28, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 27, height, 16, 28, height);
|
||||
|
||||
paint_util_push_tunnel_right(session, height, TUNNEL_6);
|
||||
break;
|
||||
|
||||
case 3:
|
||||
imageId = SPR_CHAIRLIFT_CORNER_SW_SE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 16, 16, 2, height, 16, 16, height + 28, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 16, 16, 2, height, 16, 16, height + 28);
|
||||
|
||||
imageId = SPR_20535 | session->TrackColours[SCHEME_SUPPORTS];
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 27, height, 28, 16, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 27, height, 28, 16, height);
|
||||
|
||||
imageId = SPR_20539 | session->TrackColours[SCHEME_SUPPORTS];
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 27, height, 16, 28, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 27, height, 16, 28, height);
|
||||
|
||||
paint_util_push_tunnel_left(session, height, TUNNEL_6);
|
||||
paint_util_push_tunnel_right(session, height, TUNNEL_6);
|
||||
|
|
|
@ -46,10 +46,10 @@ static void paint_lift_cage(paint_session * session, sint8 index, uint32 colourF
|
|||
uint32 imageId;
|
||||
|
||||
imageId = lift_cage_sprites[1 + index][0] | colourFlags;
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 30, height, 2, 2, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 30, height, 2, 2, height);
|
||||
|
||||
imageId = lift_cage_sprites[1 + index][1] | colourFlags;
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 30, height, 28, 28, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 2, 2, 30, height, 28, 28, height);
|
||||
}
|
||||
|
||||
/** rct2: 0x0076C6CC */
|
||||
|
@ -88,7 +88,7 @@ static void paint_lift_base(
|
|||
LocationXY16 position = session->MapPosition;
|
||||
|
||||
uint32 imageId = SPR_FLOOR_METAL_B | session->TrackColours[SCHEME_SUPPORTS];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 32, 1, height, 0, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 32, 1, height, 0, 0, height);
|
||||
|
||||
track_paint_util_paint_fences(session, edges, position, tileElement, ride, session->TrackColours[SCHEME_TRACK], height,
|
||||
fenceSpritesMetalB, get_current_rotation());
|
||||
|
|
|
@ -1312,7 +1312,7 @@ static void paint_miniature_railway_track_right_quarter_turn_3_tiles(
|
|||
if (trackSequence == 1 && direction == 0)
|
||||
{
|
||||
uint32 imageId = SPR_G2_MINIATURE_RAILWAY_QUARTER_TURN_3_TILES_SW_SE_PART_3 | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 8, 8, 2, height, 0, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 8, 8, 2, height, 0, 0, height);
|
||||
}
|
||||
}
|
||||
else
|
||||
|
@ -1476,8 +1476,7 @@ static void paint_miniature_railway_track_left_eighth_to_diag(
|
|||
bounds = miniature_railway_track_pieces_right_eight_to_orthog_bounds[direction][index];
|
||||
offset = miniature_railway_track_pieces_right_eight_to_orthog_offset[direction][index];
|
||||
}
|
||||
sub_98197C(session, imageId, 0, 0, bounds.x, bounds.y, (sint8)bounds.z, height, offset.x, offset.y, height,
|
||||
get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, bounds.x, bounds.y, (sint8)bounds.z, height, offset.x, offset.y, height);
|
||||
}
|
||||
}
|
||||
else
|
||||
|
@ -1486,8 +1485,7 @@ static void paint_miniature_railway_track_left_eighth_to_diag(
|
|||
session->TrackColours[SCHEME_SUPPORTS];
|
||||
LocationXY16 offset = miniature_railway_track_floor_pieces_left_eight_to_diag_offset[direction][trackSequence];
|
||||
LocationXYZ16 bounds = miniature_railway_track_floor_pieces_left_eight_to_diag_bounds[direction][trackSequence];
|
||||
sub_98197C(session, imageId, 0, 0, bounds.x, bounds.y, (sint8)bounds.z, height, offset.x, offset.y, height,
|
||||
get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, bounds.x, bounds.y, (sint8)bounds.z, height, offset.x, offset.y, height);
|
||||
|
||||
sint8 index = paint_miniature_railway_eighth_to_diag_index[trackSequence];
|
||||
if (index >= 0)
|
||||
|
@ -1621,8 +1619,7 @@ static void paint_miniature_railway_track_right_eighth_to_diag(
|
|||
bounds = miniature_railway_track_pieces_left_eight_to_orthog_bounds[direction][index];
|
||||
offset = miniature_railway_track_pieces_left_eight_to_orthog_offset[direction][index];
|
||||
}
|
||||
sub_98197C(session, imageId, 0, 0, bounds.x, bounds.y, (sint8)bounds.z, height, offset.x, offset.y, height,
|
||||
get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, bounds.x, bounds.y, (sint8)bounds.z, height, offset.x, offset.y, height);
|
||||
}
|
||||
}
|
||||
else
|
||||
|
@ -1631,8 +1628,7 @@ static void paint_miniature_railway_track_right_eighth_to_diag(
|
|||
session->TrackColours[SCHEME_SUPPORTS];
|
||||
LocationXY16 offset = miniature_railway_track_floor_pieces_right_eight_to_diag_offset[direction][trackSequence];
|
||||
LocationXYZ16 bounds = miniature_railway_track_floor_pieces_right_eight_to_diag_bounds[direction][trackSequence];
|
||||
sub_98197C(session, imageId, 0, 0, bounds.x, bounds.y, (sint8)bounds.z, height, offset.x, offset.y, height,
|
||||
get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, bounds.x, bounds.y, (sint8)bounds.z, height, offset.x, offset.y, height);
|
||||
|
||||
sint8 index = paint_miniature_railway_eighth_to_diag_index[trackSequence];
|
||||
if (index >= 0)
|
||||
|
@ -1762,8 +1758,9 @@ static void miniature_railway_track_diag_flat(
|
|||
|
||||
if (isSupported)
|
||||
{
|
||||
sub_98197C(session, floorImage | session->TrackColours[SCHEME_SUPPORTS], 0, 0, floorBoundSize.x, floorBoundSize.y,
|
||||
(drawRail ? 2 : 0), height, floorBoundOffset.x, floorBoundOffset.y, height, get_current_rotation());
|
||||
sub_98197C(
|
||||
session, floorImage | session->TrackColours[SCHEME_SUPPORTS], 0, 0, floorBoundSize.x, floorBoundSize.y,
|
||||
(drawRail ? 2 : 0), height, floorBoundOffset.x, floorBoundOffset.y, height);
|
||||
if (drawRail)
|
||||
{
|
||||
sub_98199C(session, imageId | session->TrackColours[SCHEME_TRACK], -16, -16, 32, 32, 2, height, -16, -16, height,
|
||||
|
@ -1772,8 +1769,7 @@ static void miniature_railway_track_diag_flat(
|
|||
}
|
||||
else if (drawRail)
|
||||
{
|
||||
sub_98197C(session, imageId | session->TrackColours[SCHEME_TRACK], -16, -16, 32, 32, 2, height, -16, -16, height,
|
||||
get_current_rotation());
|
||||
sub_98197C(session, imageId | session->TrackColours[SCHEME_TRACK], -16, -16, 32, 32, 2, height, -16, -16, height);
|
||||
}
|
||||
|
||||
paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0);
|
||||
|
@ -1858,9 +1854,10 @@ static void miniature_railway_track_diag_25_deg_up(
|
|||
static constexpr const sint8 offsetB[] = { +8, 0, +8, +8 };
|
||||
if (hasSupports)
|
||||
{
|
||||
sub_98197C(session, floorImage | session->TrackColours[SCHEME_SUPPORTS], 0, 0, floorBoundSize.x, floorBoundSize.y,
|
||||
(drawRail ? 2 : 0), height + offsetsB[direction][trackSequence][0], floorBoundOffset.x, floorBoundOffset.y,
|
||||
height + offsetsB[direction][trackSequence][1], get_current_rotation());
|
||||
sub_98197C(
|
||||
session, floorImage | session->TrackColours[SCHEME_SUPPORTS], 0, 0, floorBoundSize.x, floorBoundSize.y,
|
||||
(drawRail ? 2 : 0), height + offsetsB[direction][trackSequence][0], floorBoundOffset.x, floorBoundOffset.y,
|
||||
height + offsetsB[direction][trackSequence][1]);
|
||||
if (drawRail)
|
||||
{
|
||||
sub_98199C(session, imageId | session->TrackColours[SCHEME_TRACK], -16, -16, 32, 32, 2, height, -16, -16,
|
||||
|
@ -1869,8 +1866,9 @@ static void miniature_railway_track_diag_25_deg_up(
|
|||
}
|
||||
else if (drawRail)
|
||||
{
|
||||
sub_98197C(session, imageId | session->TrackColours[SCHEME_TRACK], -16, -16, 32, 32, 2, height, -16, -16,
|
||||
height + offsetB[direction], get_current_rotation());
|
||||
sub_98197C(
|
||||
session, imageId | session->TrackColours[SCHEME_TRACK], -16, -16, 32, 32, 2, height, -16, -16,
|
||||
height + offsetB[direction]);
|
||||
}
|
||||
|
||||
paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0);
|
||||
|
@ -1912,8 +1910,9 @@ static void miniature_railway_track_diag_flat_to_25_deg_up(
|
|||
|
||||
if (hasSupports)
|
||||
{
|
||||
sub_98197C(session, floorImage | session->TrackColours[SCHEME_SUPPORTS], 0, 0, floorBoundSize.x, floorBoundSize.y,
|
||||
(drawRail ? 2 : 0), height, floorBoundOffset.x, floorBoundOffset.y, height, get_current_rotation());
|
||||
sub_98197C(
|
||||
session, floorImage | session->TrackColours[SCHEME_SUPPORTS], 0, 0, floorBoundSize.x, floorBoundSize.y,
|
||||
(drawRail ? 2 : 0), height, floorBoundOffset.x, floorBoundOffset.y, height);
|
||||
if (drawRail)
|
||||
{
|
||||
sub_98199C(session, imageId | session->TrackColours[SCHEME_TRACK], -16, -16, 32, 32, 2, height, -16, -16, height,
|
||||
|
@ -1922,8 +1921,7 @@ static void miniature_railway_track_diag_flat_to_25_deg_up(
|
|||
}
|
||||
else if (drawRail)
|
||||
{
|
||||
sub_98197C(session, imageId | session->TrackColours[SCHEME_TRACK], -16, -16, 32, 32, 2, height, -16, -16, height,
|
||||
get_current_rotation());
|
||||
sub_98197C(session, imageId | session->TrackColours[SCHEME_TRACK], -16, -16, 32, 32, 2, height, -16, -16, height);
|
||||
}
|
||||
|
||||
paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0);
|
||||
|
@ -1988,9 +1986,10 @@ static void miniature_railway_track_diag_25_deg_up_to_flat(
|
|||
|
||||
if (hasSupports)
|
||||
{
|
||||
sub_98197C(session, floorImage | session->TrackColours[SCHEME_SUPPORTS], 0, 0, floorBoundSize.x, floorBoundSize.y,
|
||||
(drawRail ? 2 : 0), height + offsetsB[direction][trackSequence][0], floorBoundOffset.x, floorBoundOffset.y,
|
||||
height + offsetsB[direction][trackSequence][1], get_current_rotation());
|
||||
sub_98197C(
|
||||
session, floorImage | session->TrackColours[SCHEME_SUPPORTS], 0, 0, floorBoundSize.x, floorBoundSize.y,
|
||||
(drawRail ? 2 : 0), height + offsetsB[direction][trackSequence][0], floorBoundOffset.x, floorBoundOffset.y,
|
||||
height + offsetsB[direction][trackSequence][1]);
|
||||
if (drawRail)
|
||||
{
|
||||
sub_98199C(session, imageId | session->TrackColours[SCHEME_TRACK], -16, -16, 32, 32, 2, height, -16, -16,
|
||||
|
@ -1999,8 +1998,9 @@ static void miniature_railway_track_diag_25_deg_up_to_flat(
|
|||
}
|
||||
else if (drawRail)
|
||||
{
|
||||
sub_98197C(session, imageId | session->TrackColours[SCHEME_TRACK], -16, -16, 32, 32, 2, height, -16, -16,
|
||||
height + railOffsets[direction], get_current_rotation());
|
||||
sub_98197C(
|
||||
session, imageId | session->TrackColours[SCHEME_TRACK], -16, -16, 32, 32, 2, height, -16, -16,
|
||||
height + railOffsets[direction]);
|
||||
}
|
||||
|
||||
paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0);
|
||||
|
@ -2064,9 +2064,10 @@ static void miniature_railway_track_diag_25_deg_down(
|
|||
|
||||
if (hasSupports)
|
||||
{
|
||||
sub_98197C(session, floorImage | session->TrackColours[SCHEME_SUPPORTS], 0, 0, floorBoundSize.x, floorBoundSize.y,
|
||||
(drawRail ? 2 : 0), height + offsetsB[direction][trackSequence][0], floorBoundOffset.x, floorBoundOffset.y,
|
||||
height + offsetsB[direction][trackSequence][1], get_current_rotation());
|
||||
sub_98197C(
|
||||
session, floorImage | session->TrackColours[SCHEME_SUPPORTS], 0, 0, floorBoundSize.x, floorBoundSize.y,
|
||||
(drawRail ? 2 : 0), height + offsetsB[direction][trackSequence][0], floorBoundOffset.x, floorBoundOffset.y,
|
||||
height + offsetsB[direction][trackSequence][1]);
|
||||
if (drawRail)
|
||||
{
|
||||
sub_98199C(session, imageId | session->TrackColours[SCHEME_TRACK], -16, -16, 32, 32, 2, height, -16, -16,
|
||||
|
@ -2075,8 +2076,9 @@ static void miniature_railway_track_diag_25_deg_down(
|
|||
}
|
||||
else if (drawRail)
|
||||
{
|
||||
sub_98197C(session, imageId | session->TrackColours[SCHEME_TRACK], -16, -16, 32, 32, 2, height, -16, -16,
|
||||
height + railOffsets[direction], get_current_rotation());
|
||||
sub_98197C(
|
||||
session, imageId | session->TrackColours[SCHEME_TRACK], -16, -16, 32, 32, 2, height, -16, -16,
|
||||
height + railOffsets[direction]);
|
||||
}
|
||||
|
||||
paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0);
|
||||
|
@ -2139,9 +2141,10 @@ static void miniature_railway_track_diag_flat_to_25_deg_down(
|
|||
|
||||
if (hasSupports)
|
||||
{
|
||||
sub_98197C(session, floorImage | session->TrackColours[SCHEME_SUPPORTS], 0, 0, floorBoundSize.x, floorBoundSize.y,
|
||||
(drawRail ? 2 : 0), height + offsetsB[direction][trackSequence][0], floorBoundOffset.x, floorBoundOffset.y,
|
||||
height + offsetsB[direction][trackSequence][1], get_current_rotation());
|
||||
sub_98197C(
|
||||
session, floorImage | session->TrackColours[SCHEME_SUPPORTS], 0, 0, floorBoundSize.x, floorBoundSize.y,
|
||||
(drawRail ? 2 : 0), height + offsetsB[direction][trackSequence][0], floorBoundOffset.x, floorBoundOffset.y,
|
||||
height + offsetsB[direction][trackSequence][1]);
|
||||
if (drawRail)
|
||||
{
|
||||
sub_98199C(session, imageId | session->TrackColours[SCHEME_TRACK], -16, -16, 32, 32, 2, height, -16, -16,
|
||||
|
@ -2150,8 +2153,9 @@ static void miniature_railway_track_diag_flat_to_25_deg_down(
|
|||
}
|
||||
else if (drawRail)
|
||||
{
|
||||
sub_98197C(session, imageId | session->TrackColours[SCHEME_TRACK], -16, -16, 32, 32, 2, height, -16, -16,
|
||||
height + railOffsets[direction], get_current_rotation());
|
||||
sub_98197C(
|
||||
session, imageId | session->TrackColours[SCHEME_TRACK], -16, -16, 32, 32, 2, height, -16, -16,
|
||||
height + railOffsets[direction]);
|
||||
}
|
||||
|
||||
paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0);
|
||||
|
@ -2191,8 +2195,9 @@ static void miniature_railway_track_diag_25_deg_down_to_flat(
|
|||
|
||||
if (hasSupports)
|
||||
{
|
||||
sub_98197C(session, floorImage | session->TrackColours[SCHEME_SUPPORTS], 0, 0, floorBoundSize.x, floorBoundSize.y,
|
||||
(drawRail ? 2 : 0), height, floorBoundOffset.x, floorBoundOffset.y, height, get_current_rotation());
|
||||
sub_98197C(
|
||||
session, floorImage | session->TrackColours[SCHEME_SUPPORTS], 0, 0, floorBoundSize.x, floorBoundSize.y,
|
||||
(drawRail ? 2 : 0), height, floorBoundOffset.x, floorBoundOffset.y, height);
|
||||
if (drawRail)
|
||||
{
|
||||
sub_98199C(session, imageId | session->TrackColours[SCHEME_TRACK], -16, -16, 32, 32, 2, height, -16, -16, height,
|
||||
|
@ -2201,8 +2206,7 @@ static void miniature_railway_track_diag_25_deg_down_to_flat(
|
|||
}
|
||||
else if (drawRail)
|
||||
{
|
||||
sub_98197C(session, imageId | session->TrackColours[SCHEME_TRACK], -16, -16, 32, 32, 2, height, -16, -16, height,
|
||||
get_current_rotation());
|
||||
sub_98197C(session, imageId | session->TrackColours[SCHEME_TRACK], -16, -16, 32, 32, 2, height, -16, -16, height);
|
||||
}
|
||||
|
||||
paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0);
|
||||
|
|
|
@ -479,12 +479,12 @@ static void paint_monorail_station(
|
|||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
imageId = SPR_STATION_BASE_B_SW_NE | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 28, 2, height - 2, 0, 2, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 28, 2, height - 2, 0, 2, height);
|
||||
}
|
||||
else if (direction == 1 || direction == 3)
|
||||
{
|
||||
imageId = SPR_STATION_BASE_B_NW_SE | session->TrackColours[SCHEME_MISC];
|
||||
sub_98197C(session, imageId, 0, 0, 28, 32, 2, height - 2, 2, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 28, 32, 2, height - 2, 2, 0, height);
|
||||
}
|
||||
|
||||
imageId = monorail_track_pieces_flat[direction] | session->TrackColours[SCHEME_TRACK];
|
||||
|
@ -1058,7 +1058,7 @@ static void paint_monorail_track_left_eighth_to_diag(
|
|||
uint32 imageId = ghost_train_track_pieces_left_eight_to_diag[direction][index] | session->TrackColours[SCHEME_TRACK];
|
||||
const LocationXY16 offset = ghost_train_track_pieces_left_eight_to_diag_offset[direction][index];
|
||||
const LocationXY16 bounds = ghost_train_track_pieces_left_eight_to_diag_bounds[direction][index];
|
||||
sub_98197C(session, imageId, 0, 0, bounds.x, bounds.y, 2, height, offset.x, offset.y, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, bounds.x, bounds.y, 2, height, offset.x, offset.y, height);
|
||||
}
|
||||
|
||||
switch (trackSequence)
|
||||
|
@ -1126,7 +1126,7 @@ static void paint_monorail_track_right_eighth_to_diag(
|
|||
uint32 imageId = ghost_train_track_pieces_right_eight_to_diag[direction][index] | session->TrackColours[SCHEME_TRACK];
|
||||
const LocationXY16 offset = ghost_train_track_pieces_right_eight_to_diag_offset[direction][index];
|
||||
const LocationXY16 bounds = ghost_train_track_pieces_right_eight_to_diag_bounds[direction][index];
|
||||
sub_98197C(session, imageId, 0, 0, bounds.x, bounds.y, 2, height, offset.x, offset.y, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, bounds.x, bounds.y, 2, height, offset.x, offset.y, height);
|
||||
}
|
||||
|
||||
switch (trackSequence)
|
||||
|
@ -1234,7 +1234,7 @@ static void paint_monorail_track_diag_flat(
|
|||
if (monorail_diag_image_segment[direction][trackSequence])
|
||||
{
|
||||
uint32 imageId = monorail_track_pieces_diag_flat[direction] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 2, height, -16, -16, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 2, height, -16, -16, height);
|
||||
}
|
||||
|
||||
if (trackSequence == 3)
|
||||
|
@ -1260,7 +1260,7 @@ static void paint_monorail_track_diag_25_deg_up(
|
|||
if (monorail_diag_image_segment[direction][trackSequence])
|
||||
{
|
||||
uint32 imageId = monorail_track_pieces_diag_25_deg_up[direction] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 2, height, -16, -16, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 2, height, -16, -16, height);
|
||||
}
|
||||
|
||||
if (trackSequence == 3)
|
||||
|
@ -1286,7 +1286,7 @@ static void paint_monorail_track_diag_flat_to_25_deg_up(
|
|||
if (monorail_diag_image_segment[direction][trackSequence])
|
||||
{
|
||||
uint32 imageId = monorail_track_pieces_diag_flat_to_25_deg_up[direction] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 2, height, -16, -16, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 2, height, -16, -16, height);
|
||||
}
|
||||
|
||||
if (trackSequence == 3)
|
||||
|
@ -1312,7 +1312,7 @@ static void paint_monorail_track_diag_25_deg_up_to_flat(
|
|||
if (monorail_diag_image_segment[direction][trackSequence])
|
||||
{
|
||||
uint32 imageId = monorail_track_pieces_diag_25_deg_up_to_flat[direction] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 2, height, -16, -16, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 2, height, -16, -16, height);
|
||||
}
|
||||
|
||||
if (trackSequence == 3)
|
||||
|
@ -1338,7 +1338,7 @@ static void paint_monorail_track_diag_25_deg_down(
|
|||
if (monorail_diag_image_segment[direction][trackSequence])
|
||||
{
|
||||
uint32 imageId = monorail_track_pieces_diag_25_deg_up[(direction + 2) % 4] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 2, height, -16, -16, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 2, height, -16, -16, height);
|
||||
}
|
||||
|
||||
if (trackSequence == 3)
|
||||
|
@ -1365,7 +1365,7 @@ static void paint_monorail_track_diag_flat_to_25_deg_down(
|
|||
{
|
||||
uint32 imageId =
|
||||
monorail_track_pieces_diag_25_deg_up_to_flat[(direction + 2) % 4] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 2, height, -16, -16, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 2, height, -16, -16, height);
|
||||
}
|
||||
|
||||
if (trackSequence == 3)
|
||||
|
@ -1392,7 +1392,7 @@ static void paint_monorail_track_diag_25_deg_down_to_flat(
|
|||
{
|
||||
uint32 imageId =
|
||||
monorail_track_pieces_diag_flat_to_25_deg_up[(direction + 2) % 4] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 2, height, -16, -16, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, -16, -16, 32, 32, 2, height, -16, -16, height);
|
||||
}
|
||||
|
||||
if (trackSequence == 3)
|
||||
|
|
|
@ -50,18 +50,18 @@ static void paint_boat_hire_track_flat(
|
|||
if (direction & 1)
|
||||
{
|
||||
imageId = SPR_BOAT_HIRE_FLAT_BACK_NW_SE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 3, height, 4, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 3, height, 4, 0, height);
|
||||
|
||||
imageId = SPR_BOAT_HIRE_FLAT_FRONT_NW_SE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 3, height, 28, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 3, height, 28, 0, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
imageId = SPR_BOAT_HIRE_FLAT_BACK_SW_NE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 3, height, 0, 4, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 3, height, 0, 4, height);
|
||||
|
||||
imageId = SPR_BOAT_HIRE_FLAT_FRONT_SW_NE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 3, height, 0, 28, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 3, height, 0, 28, height);
|
||||
}
|
||||
|
||||
paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENT_D0 | SEGMENT_C4 | SEGMENT_CC, direction),
|
||||
|
@ -113,31 +113,31 @@ static void paint_boat_hire_track_left_quarter_turn_1_tile(
|
|||
{
|
||||
case 0:
|
||||
imageId = SPR_BOAT_HIRE_FLAT_QUARTER_TURN_1_TILE_BACK_SW_NW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 32, 0, height, 0, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 32, 0, height, 0, 0, height);
|
||||
|
||||
imageId = SPR_BOAT_HIRE_FLAT_QUARTER_TURN_1_TILE_FRONT_SW_NW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 3, 3, 3, height, 28, 28, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 3, 3, 3, height, 28, 28, height + 2);
|
||||
break;
|
||||
case 1:
|
||||
imageId = SPR_BOAT_HIRE_FLAT_QUARTER_TURN_1_TILE_BACK_NW_NE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 32, 0, height, 0, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 32, 0, height, 0, 0, height);
|
||||
|
||||
imageId = SPR_BOAT_HIRE_FLAT_QUARTER_TURN_1_TILE_FRONT_NW_NE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 3, 3, 3, height, 28, 28, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 3, 3, 3, height, 28, 28, height + 2);
|
||||
break;
|
||||
case 2:
|
||||
imageId = SPR_BOAT_HIRE_FLAT_QUARTER_TURN_1_TILE_BACK_NE_SE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 32, 0, height, 0, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 32, 0, height, 0, 0, height);
|
||||
|
||||
imageId = SPR_BOAT_HIRE_FLAT_QUARTER_TURN_1_TILE_FRONT_NE_SE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 3, 3, 3, height, 28, 28, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 3, 3, 3, height, 28, 28, height + 2);
|
||||
break;
|
||||
case 3:
|
||||
imageId = SPR_BOAT_HIRE_FLAT_QUARTER_TURN_1_TILE_FRONT_SE_SW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 3, 3, 3, height, 28, 28, height + 2, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 3, 3, 3, height, 28, 28, height + 2);
|
||||
|
||||
imageId = SPR_BOAT_HIRE_FLAT_QUARTER_TURN_1_TILE_BACK_SE_SW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 32, 0, height, 0, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 32, 0, height, 0, 0, height);
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
|
@ -228,8 +228,8 @@ void vehicle_visual_river_rapids(paint_session * session, sint32 x, sint32 image
|
|||
|
||||
const vehicle_boundbox * bb = &_riverRapidsBoundbox[j];
|
||||
image_id = baseImage_id | SPRITE_ID_PALETTE_COLOUR_2(vehicle->colours.body_colour, vehicle->colours.trim_colour);
|
||||
sub_98197C(session, image_id, 0, 0, bb->length_x, bb->length_y, bb->length_z, z, bb->offset_x, bb->offset_y,
|
||||
bb->offset_z + z, rotation);
|
||||
sub_98197C(
|
||||
session, image_id, 0, 0, bb->length_x, bb->length_y, bb->length_z, z, bb->offset_x, bb->offset_y, bb->offset_z + z);
|
||||
|
||||
if (session->Unk140E9A8->zoom_level < 2 && vehicle->num_peeps > 0)
|
||||
{
|
||||
|
@ -285,21 +285,21 @@ static void paint_river_rapids_track_flat(
|
|||
{
|
||||
imageId =
|
||||
(direction == 1 ? SPR_RIVER_RAPIDS_FLAT_NW_SE : SPR_RIVER_RAPIDS_FLAT_SE_NW) | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 24, 32, 11, height, 4, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 24, 32, 11, height, 4, 0, height);
|
||||
|
||||
imageId = (direction == 1 ? SPR_RIVER_RAPIDS_FLAT_FRONT_NW_SE : SPR_RIVER_RAPIDS_FLAT_FRONT_SE_NW) |
|
||||
session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 3, height, 27, 0, height + 17, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 3, height, 27, 0, height + 17);
|
||||
}
|
||||
else
|
||||
{
|
||||
imageId =
|
||||
(direction == 0 ? SPR_RIVER_RAPIDS_FLAT_SW_NE : SPR_RIVER_RAPIDS_FLAT_NE_SW) | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 24, 11, height, 0, 4, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 24, 11, height, 0, 4, height);
|
||||
|
||||
imageId = (direction == 0 ? SPR_RIVER_RAPIDS_FLAT_FRONT_SW_NE : SPR_RIVER_RAPIDS_FLAT_FRONT_NE_SW) |
|
||||
session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 3, height, 0, 27, height + 17, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 3, height, 0, 27, height + 17);
|
||||
}
|
||||
|
||||
wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session->TrackColours[SCHEME_SUPPORTS], nullptr);
|
||||
|
@ -342,10 +342,10 @@ static void paint_river_rapids_track_25_deg(paint_session * session, uint8 direc
|
|||
{
|
||||
case 0:
|
||||
imageId = sprites[direction][0] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 24, 4, height, 0, 4, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 24, 4, height, 0, 4, height);
|
||||
|
||||
imageId = sprites[direction][1] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 34, height, 0, 27, height + 16, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 34, height, 0, 27, height + 16);
|
||||
|
||||
wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS], nullptr);
|
||||
paint_util_push_tunnel_left(session, height - 8, TUNNEL_7);
|
||||
|
@ -353,11 +353,11 @@ static void paint_river_rapids_track_25_deg(paint_session * session, uint8 direc
|
|||
|
||||
case 1:
|
||||
imageId = sprites[direction][0] | session->TrackColours[SCHEME_TRACK];
|
||||
ps = sub_98197C(session, imageId, 0, 0, 24, 32, 4, height, 4, 0, height, get_current_rotation());
|
||||
ps = sub_98197C(session, imageId, 0, 0, 24, 32, 4, height, 4, 0, height);
|
||||
session->WoodenSupportsPrependTo = ps;
|
||||
|
||||
imageId = sprites[direction][1] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 34, height, 27, 0, height + 16, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 34, height, 27, 0, height + 16);
|
||||
|
||||
wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS], nullptr);
|
||||
paint_util_push_tunnel_right(session, height + 8, TUNNEL_8);
|
||||
|
@ -365,11 +365,11 @@ static void paint_river_rapids_track_25_deg(paint_session * session, uint8 direc
|
|||
|
||||
case 2:
|
||||
imageId = sprites[direction][0] | session->TrackColours[SCHEME_TRACK];
|
||||
ps = sub_98197C(session, imageId, 0, 0, 32, 24, 4, height, 0, 4, height, get_current_rotation());
|
||||
ps = sub_98197C(session, imageId, 0, 0, 32, 24, 4, height, 0, 4, height);
|
||||
session->WoodenSupportsPrependTo = ps;
|
||||
|
||||
imageId = sprites[direction][1] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 34, height, 0, 27, height + 16, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 34, height, 0, 27, height + 16);
|
||||
|
||||
wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS], nullptr);
|
||||
paint_util_push_tunnel_left(session, height + 8, TUNNEL_8);
|
||||
|
@ -377,10 +377,10 @@ static void paint_river_rapids_track_25_deg(paint_session * session, uint8 direc
|
|||
|
||||
case 3:
|
||||
imageId = sprites[direction][0] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 24, 32, 4, height, 4, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 24, 32, 4, height, 4, 0, height);
|
||||
|
||||
imageId = sprites[direction][1] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 34, height, 27, 0, height + 16, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 34, height, 27, 0, height + 16);
|
||||
|
||||
wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS], nullptr);
|
||||
paint_util_push_tunnel_right(session, height - 8, TUNNEL_7);
|
||||
|
@ -401,10 +401,10 @@ static void paint_river_rapids_track_25_deg_to_flat_a(paint_session * session, u
|
|||
{
|
||||
case 0:
|
||||
imageId = sprites[direction][0] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 24, 4, height, 0, 4, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 24, 4, height, 0, 4, height);
|
||||
|
||||
imageId = sprites[direction][1] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 18, height, 0, 27, height + 16, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 18, height, 0, 27, height + 16);
|
||||
|
||||
wooden_a_supports_paint_setup(session, 0, 5, height, session->TrackColours[SCHEME_SUPPORTS], nullptr);
|
||||
paint_util_push_tunnel_left(session, height - 8, TUNNEL_6);
|
||||
|
@ -412,11 +412,11 @@ static void paint_river_rapids_track_25_deg_to_flat_a(paint_session * session, u
|
|||
|
||||
case 1:
|
||||
imageId = sprites[direction][0] | session->TrackColours[SCHEME_TRACK];
|
||||
ps = sub_98197C(session, imageId, 0, 0, 24, 32, 4, height, 4, 0, height, get_current_rotation());
|
||||
ps = sub_98197C(session, imageId, 0, 0, 24, 32, 4, height, 4, 0, height);
|
||||
session->WoodenSupportsPrependTo = ps;
|
||||
|
||||
imageId = sprites[direction][1] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 18, height, 27, 0, height + 16, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 18, height, 27, 0, height + 16);
|
||||
|
||||
wooden_a_supports_paint_setup(session, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS], nullptr);
|
||||
paint_util_push_tunnel_right(session, height + 8, TUNNEL_14);
|
||||
|
@ -424,11 +424,11 @@ static void paint_river_rapids_track_25_deg_to_flat_a(paint_session * session, u
|
|||
|
||||
case 2:
|
||||
imageId = sprites[direction][0] | session->TrackColours[SCHEME_TRACK];
|
||||
ps = sub_98197C(session, imageId, 0, 0, 32, 24, 4, height, 0, 4, height, get_current_rotation());
|
||||
ps = sub_98197C(session, imageId, 0, 0, 32, 24, 4, height, 0, 4, height);
|
||||
session->WoodenSupportsPrependTo = ps;
|
||||
|
||||
imageId = sprites[direction][1] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 18, height, 0, 27, height + 16, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 18, height, 0, 27, height + 16);
|
||||
|
||||
wooden_a_supports_paint_setup(session, 0, 7, height, session->TrackColours[SCHEME_SUPPORTS], nullptr);
|
||||
paint_util_push_tunnel_left(session, height + 8, TUNNEL_14);
|
||||
|
@ -436,10 +436,10 @@ static void paint_river_rapids_track_25_deg_to_flat_a(paint_session * session, u
|
|||
|
||||
case 3:
|
||||
imageId = sprites[direction][0] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 24, 32, 4, height, 4, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 24, 32, 4, height, 4, 0, height);
|
||||
|
||||
imageId = sprites[direction][1] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 18, height, 27, 0, height + 16, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 18, height, 27, 0, height + 16);
|
||||
|
||||
wooden_a_supports_paint_setup(session, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS], nullptr);
|
||||
paint_util_push_tunnel_right(session, height - 8, TUNNEL_6);
|
||||
|
@ -460,10 +460,10 @@ static void paint_river_rapids_track_25_deg_to_flat_b(paint_session * session, u
|
|||
{
|
||||
case 0:
|
||||
imageId = sprites[direction][0] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 24, 11, height, 0, 4, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 24, 11, height, 0, 4, height);
|
||||
|
||||
imageId = sprites[direction][1] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 26, height, 0, 27, height + 16, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 26, height, 0, 27, height + 16);
|
||||
|
||||
wooden_a_supports_paint_setup(session, 0, 1, height, session->TrackColours[SCHEME_SUPPORTS], nullptr);
|
||||
paint_util_push_tunnel_left(session, height, TUNNEL_6);
|
||||
|
@ -471,11 +471,11 @@ static void paint_river_rapids_track_25_deg_to_flat_b(paint_session * session, u
|
|||
|
||||
case 1:
|
||||
imageId = sprites[direction][0] | session->TrackColours[SCHEME_TRACK];
|
||||
ps = sub_98197C(session, imageId, 0, 0, 24, 32, 11, height, 4, 0, height, get_current_rotation());
|
||||
ps = sub_98197C(session, imageId, 0, 0, 24, 32, 11, height, 4, 0, height);
|
||||
session->WoodenSupportsPrependTo = ps;
|
||||
|
||||
imageId = sprites[direction][1] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 26, height, 27, 0, height + 16, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 26, height, 27, 0, height + 16);
|
||||
|
||||
wooden_a_supports_paint_setup(session, 1, 2, height, session->TrackColours[SCHEME_SUPPORTS], nullptr);
|
||||
paint_util_push_tunnel_right(session, height, TUNNEL_8);
|
||||
|
@ -483,11 +483,11 @@ static void paint_river_rapids_track_25_deg_to_flat_b(paint_session * session, u
|
|||
|
||||
case 2:
|
||||
imageId = sprites[direction][0] | session->TrackColours[SCHEME_TRACK];
|
||||
ps = sub_98197C(session, imageId, 0, 0, 32, 24, 11, height, 0, 4, height, get_current_rotation());
|
||||
ps = sub_98197C(session, imageId, 0, 0, 32, 24, 11, height, 0, 4, height);
|
||||
session->WoodenSupportsPrependTo = ps;
|
||||
|
||||
imageId = sprites[direction][1] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 26, height, 0, 27, height + 16, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 26, height, 0, 27, height + 16);
|
||||
|
||||
wooden_a_supports_paint_setup(session, 0, 3, height, session->TrackColours[SCHEME_SUPPORTS], nullptr);
|
||||
paint_util_push_tunnel_left(session, height, TUNNEL_8);
|
||||
|
@ -495,10 +495,10 @@ static void paint_river_rapids_track_25_deg_to_flat_b(paint_session * session, u
|
|||
|
||||
case 3:
|
||||
imageId = sprites[direction][0] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 24, 32, 11, height, 4, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 24, 32, 11, height, 4, 0, height);
|
||||
|
||||
imageId = sprites[direction][1] | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 26, height, 27, 0, height + 16, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 26, height, 27, 0, height + 16);
|
||||
|
||||
wooden_a_supports_paint_setup(session, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS], nullptr);
|
||||
paint_util_push_tunnel_right(session, height, TUNNEL_6);
|
||||
|
@ -597,41 +597,41 @@ static void paint_river_rapids_track_left_quarter_turn_1_tile(
|
|||
{
|
||||
case 0:
|
||||
imageId = SPR_RIVER_RAPIDS_LEFT_QUARTER_TURN_1_TILE_SW_NW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 28, 26, 11, height, 4, 2, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 28, 26, 11, height, 4, 2, height);
|
||||
|
||||
imageId = SPR_RIVER_RAPIDS_LEFT_QUARTER_TURN_1_TILE_FRONT_SW_NW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 2, 1, 7, height, 28, 27, height + 13, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 2, 1, 7, height, 28, 27, height + 13);
|
||||
|
||||
paint_util_push_tunnel_left(session, height, TUNNEL_6);
|
||||
break;
|
||||
|
||||
case 1:
|
||||
imageId = SPR_RIVER_RAPIDS_LEFT_QUARTER_TURN_1_TILE_NW_NE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 28, 28, 11, height, 0, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 28, 28, 11, height, 0, 0, height);
|
||||
|
||||
imageId = SPR_RIVER_RAPIDS_QUARTER_TURN_1_TILE_FRONT_LEFT_NW_NE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 30, 7, height, 27, 1, height + 13, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 30, 7, height, 27, 1, height + 13);
|
||||
|
||||
imageId = SPR_RIVER_RAPIDS_QUARTER_TURN_1_TILE_FRONT_RIGHT_NW_NE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 30, 1, 7, height, 1, 27, height + 13, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 30, 1, 7, height, 1, 27, height + 13);
|
||||
break;
|
||||
|
||||
case 2:
|
||||
imageId = SPR_RIVER_RAPIDS_LEFT_QUARTER_TURN_1_TILE_NE_SE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 26, 28, 11, height, 2, 4, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 26, 28, 11, height, 2, 4, height);
|
||||
|
||||
imageId = SPR_RIVER_RAPIDS_LEFT_QUARTER_TURN_1_TILE_FRONT_NE_SE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 2, 7, height, 27, 28, height + 13, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 2, 7, height, 27, 28, height + 13);
|
||||
|
||||
paint_util_push_tunnel_right(session, height, TUNNEL_6);
|
||||
break;
|
||||
|
||||
case 3:
|
||||
imageId = SPR_RIVER_RAPIDS_LEFT_QUARTER_TURN_1_TILE_SE_SW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 28, 28, 11, height, 4, 4, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 28, 28, 11, height, 4, 4, height);
|
||||
|
||||
imageId = SPR_RIVER_RAPIDS_LEFT_QUARTER_TURN_1_TILE_FRONT_SE_SW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 1, 7, height, 28, 28, height + 13, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 1, 7, height, 28, 28, height + 13);
|
||||
|
||||
paint_util_push_tunnel_left(session, height, TUNNEL_6);
|
||||
paint_util_push_tunnel_right(session, height, TUNNEL_6);
|
||||
|
@ -658,10 +658,10 @@ static void paint_river_rapids_track_right_quarter_turn_1_tile(
|
|||
{
|
||||
case 0:
|
||||
imageId = SPR_RIVER_RAPIDS_RIGHT_QUARTER_TURN_1_TILE_SW_SE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 28, 28, 11, height, 4, 4, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 28, 28, 11, height, 4, 4, height);
|
||||
|
||||
imageId = SPR_RIVER_RAPIDS_RIGHT_QUARTER_TURN_1_TILE_FRONT_SW_SE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 1, 7, height, 28, 28, height + 13, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 1, 7, height, 28, 28, height + 13);
|
||||
|
||||
paint_util_push_tunnel_left(session, height, TUNNEL_6);
|
||||
paint_util_push_tunnel_right(session, height, TUNNEL_6);
|
||||
|
@ -669,31 +669,31 @@ static void paint_river_rapids_track_right_quarter_turn_1_tile(
|
|||
|
||||
case 1:
|
||||
imageId = SPR_RIVER_RAPIDS_RIGHT_QUARTER_TURN_1_TILE_SE_NE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 28, 26, 11, height, 4, 2, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 28, 26, 11, height, 4, 2, height);
|
||||
|
||||
imageId = SPR_RIVER_RAPIDS_RIGHT_QUARTER_TURN_1_TILE_FRONT_SE_NE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 2, 1, 7, height, 28, 27, height + 13, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 2, 1, 7, height, 28, 27, height + 13);
|
||||
|
||||
paint_util_push_tunnel_left(session, height, TUNNEL_6);
|
||||
break;
|
||||
|
||||
case 2:
|
||||
imageId = SPR_RIVER_RAPIDS_RIGHT_QUARTER_TURN_1_TILE_NE_NW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 28, 28, 11, height, 0, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 28, 28, 11, height, 0, 0, height);
|
||||
|
||||
imageId = SPR_RIVER_RAPIDS_QUARTER_TURN_1_TILE_FRONT_LEFT_NW_NE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 30, 7, height, 27, 1, height + 13, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 30, 7, height, 27, 1, height + 13);
|
||||
|
||||
imageId = SPR_RIVER_RAPIDS_QUARTER_TURN_1_TILE_FRONT_RIGHT_NW_NE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 30, 1, 7, height, 1, 27, height + 13, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 30, 1, 7, height, 1, 27, height + 13);
|
||||
break;
|
||||
|
||||
case 3:
|
||||
imageId = SPR_RIVER_RAPIDS_RIGHT_QUARTER_TURN_1_TILE_NW_SW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 26, 28, 11, height, 2, 4, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 26, 28, 11, height, 2, 4, height);
|
||||
|
||||
imageId = SPR_RIVER_RAPIDS_RIGHT_QUARTER_TURN_1_TILE_FRONT_NW_SW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 28, 7, height, 27, 2, height + 13, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 28, 7, height, 27, 2, height + 13);
|
||||
|
||||
paint_util_push_tunnel_right(session, height, TUNNEL_6);
|
||||
break;
|
||||
|
@ -721,17 +721,17 @@ static void paint_river_rapids_track_waterfall(
|
|||
{
|
||||
imageId = (direction == 1 ? SPR_RIVER_RAPIDS_WATERFALL_NW_SE : SPR_RIVER_RAPIDS_WATERFALL_SE_NW) |
|
||||
session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 24, 32, 11, height, 4, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 24, 32, 11, height, 4, 0, height);
|
||||
|
||||
imageId = (SPR_RIVER_RAPIDS_WATERFALL_BASE_NE_FRAME_0 + frameNum) | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98199C(session, imageId, 0, 0, 24, 32, 11, height, 4, 0, height, get_current_rotation());
|
||||
|
||||
imageId = (SPR_RIVER_RAPIDS_WATERFALL_TOP_NE_FRAME_0 + frameNum) | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 27, height, 4, 0, height + 17, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 27, height, 4, 0, height + 17);
|
||||
|
||||
imageId = (direction == 1 ? SPR_RIVER_RAPIDS_WATERFALL_FRONT_NW_SE : SPR_RIVER_RAPIDS_WATERFALL_FRONT_SE_NW) |
|
||||
session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 27, height, 27, 0, height + 17, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 27, height, 27, 0, height + 17);
|
||||
|
||||
imageId = (SPR_RIVER_RAPIDS_WATERFALL_SIDE_SW_FRAME_0 + frameNum) | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98199C(session, imageId, 0, 0, 1, 32, 27, height, 27, 0, height + 17, get_current_rotation());
|
||||
|
@ -740,17 +740,17 @@ static void paint_river_rapids_track_waterfall(
|
|||
{
|
||||
imageId = (direction == 0 ? SPR_RIVER_RAPIDS_WATERFALL_SW_NE : SPR_RIVER_RAPIDS_WATERFALL_NE_SW) |
|
||||
session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 24, 11, height, 0, 4, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 24, 11, height, 0, 4, height);
|
||||
|
||||
imageId = (SPR_RIVER_RAPIDS_WATERFALL_BASE_NW_FRAME_0 + frameNum) | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98199C(session, imageId, 0, 0, 32, 24, 11, height, 0, 4, height, get_current_rotation());
|
||||
|
||||
imageId = (SPR_RIVER_RAPIDS_WATERFALL_TOP_NW_FRAME_0 + frameNum) | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 27, height, 0, 4, height + 17, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 27, height, 0, 4, height + 17);
|
||||
|
||||
imageId = (direction == 0 ? SPR_RIVER_RAPIDS_WATERFALL_FRONT_SW_NE : SPR_RIVER_RAPIDS_WATERFALL_FRONT_NE_SW) |
|
||||
session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 27, height, 0, 27, height + 17, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 27, height, 0, 27, height + 17);
|
||||
|
||||
imageId = (SPR_RIVER_RAPIDS_WATERFALL_SIDE_SE_FRAME_0 + frameNum) | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98199C(session, imageId, 0, 0, 32, 1, 27, height, 0, 27, height + 17, get_current_rotation());
|
||||
|
@ -787,18 +787,18 @@ static void paint_river_rapids_track_rapids(
|
|||
if (direction & 1)
|
||||
{
|
||||
imageId = (SPR_RIVER_RAPIDS_RAPIDS_NW_SE_FRAME_0 + frameNum) | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 24, 32, 11, height, 4, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 24, 32, 11, height, 4, 0, height);
|
||||
|
||||
imageId = SPR_RIVER_RAPIDS_RAPIDS_FRONT_NW_SE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 11, height, 27, 0, height + 17, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 11, height, 27, 0, height + 17);
|
||||
}
|
||||
else
|
||||
{
|
||||
imageId = (SPR_RIVER_RAPIDS_RAPIDS_SW_NE_FRAME_0 + frameNum) | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 24, 11, height, 0, 4, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 24, 11, height, 0, 4, height);
|
||||
|
||||
imageId = SPR_RIVER_RAPIDS_RAPIDS_FRONT_SW_NE | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 11, height, 0, 27, height + 17, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 11, height, 0, 27, height + 17);
|
||||
}
|
||||
|
||||
wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session->TrackColours[SCHEME_SUPPORTS], nullptr);
|
||||
|
@ -847,27 +847,27 @@ static void paint_river_rapids_track_whirlpool(
|
|||
{
|
||||
imageId =
|
||||
(direction == 1 ? SPR_RIVER_RAPIDS_FLAT_NW_SE : SPR_RIVER_RAPIDS_FLAT_SE_NW) | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 24, 32, 11, height, 4, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 24, 32, 11, height, 4, 0, height);
|
||||
|
||||
imageId = (SPR_RIVER_RAPIDS_RAPIDS_WHIRLPOOL_FRAME_0 + frameNum) | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98199C(session, imageId, 0, 0, 24, 32, 11, height, 4, 0, height, get_current_rotation());
|
||||
|
||||
imageId = (direction == 1 ? SPR_RIVER_RAPIDS_FLAT_FRONT_NW_SE : SPR_RIVER_RAPIDS_FLAT_FRONT_SE_NW) |
|
||||
session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 3, height, 27, 0, height + 17, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 3, height, 27, 0, height + 17);
|
||||
}
|
||||
else
|
||||
{
|
||||
imageId =
|
||||
(direction == 0 ? SPR_RIVER_RAPIDS_FLAT_SW_NE : SPR_RIVER_RAPIDS_FLAT_NE_SW) | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 24, 11, height, 0, 4, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 24, 11, height, 0, 4, height);
|
||||
|
||||
imageId = (SPR_RIVER_RAPIDS_RAPIDS_WHIRLPOOL_FRAME_0 + frameNum) | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98199C(session, imageId, 0, 0, 32, 24, 11, height, 0, 4, height, get_current_rotation());
|
||||
|
||||
imageId = (direction == 0 ? SPR_RIVER_RAPIDS_FLAT_FRONT_SW_NE : SPR_RIVER_RAPIDS_FLAT_FRONT_NE_SW) |
|
||||
session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 3, height, 0, 27, height + 17, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 3, height, 0, 27, height + 17);
|
||||
}
|
||||
|
||||
wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session->TrackColours[SCHEME_SUPPORTS], nullptr);
|
||||
|
|
|
@ -803,21 +803,21 @@ static void paint_splash_boats_track_flat(
|
|||
{
|
||||
imageId = (direction == 1 ? SPR_SPLASH_BOATS_FLAT_TOP_NW_SE : SPR_SPLASH_BOATS_FLAT_TOP_SE_NW) |
|
||||
session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 2, height, 6, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 2, height, 6, 0, height);
|
||||
|
||||
imageId = (direction == 1 ? SPR_SPLASH_BOATS_FLAT_SIDE_NW_SE : SPR_SPLASH_BOATS_FLAT_SIDE_SE_NW) |
|
||||
session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 26, height, 27, 0, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 1, 32, 26, height, 27, 0, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
imageId = (direction == 0 ? SPR_SPLASH_BOATS_FLAT_TOP_SW_NE : SPR_SPLASH_BOATS_FLAT_TOP_NE_SW) |
|
||||
session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 2, height, 0, 6, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 2, height, 0, 6, height);
|
||||
|
||||
imageId = (direction == 0 ? SPR_SPLASH_BOATS_FLAT_SIDE_SW_NE : SPR_SPLASH_BOATS_FLAT_SIDE_NE_SW) |
|
||||
session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 26, height, 0, 27, height, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 1, 26, height, 0, 27, height);
|
||||
}
|
||||
|
||||
wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session->TrackColours[SCHEME_SUPPORTS], nullptr);
|
||||
|
@ -850,7 +850,7 @@ static void paint_splash_boats_station(
|
|||
{
|
||||
uint32 imageId = (direction == 1 ? SPR_SPLASH_BOATS_FLAT_TOP_NW_SE : SPR_SPLASH_BOATS_FLAT_TOP_SE_NW) |
|
||||
session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 1, height, 6, 0, height + 3, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 1, height, 6, 0, height + 3);
|
||||
|
||||
imageId = SPR_STATION_BASE_B_NW_SE | session->TrackColours[SCHEME_MISC];
|
||||
sub_98196C(session, imageId, 0, 0, 32, 32, 1, height);
|
||||
|
@ -859,7 +859,7 @@ static void paint_splash_boats_station(
|
|||
{
|
||||
uint32 imageId = (direction == 0 ? SPR_SPLASH_BOATS_FLAT_TOP_SW_NE : SPR_SPLASH_BOATS_FLAT_TOP_NE_SW) |
|
||||
session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 1, height, 0, 6, height + 3, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 1, height, 0, 6, height + 3);
|
||||
|
||||
imageId = SPR_STATION_BASE_B_SW_NE | session->TrackColours[SCHEME_MISC];
|
||||
sub_98196C(session, imageId, 0, 0, 32, 32, 1, height);
|
||||
|
|
|
@ -61,8 +61,8 @@ void vehicle_visual_submarine(paint_session * session, sint32 x, sint32 imageDir
|
|||
|
||||
image_id =
|
||||
baseImage_id | (vehicle->colours.body_colour << 19) | (vehicle->colours.trim_colour << 24) | IMAGE_TYPE_REMAP_2_PLUS;
|
||||
paint_struct * ps = sub_98197C(session, image_id, 0, 0, bb.length_x, bb.length_y, bb.length_z, z, bb.offset_x, bb.offset_y,
|
||||
bb.offset_z + z, get_current_rotation());
|
||||
paint_struct * ps = sub_98197C(
|
||||
session, image_id, 0, 0, bb.length_x, bb.length_y, bb.length_z, z, bb.offset_x, bb.offset_y, bb.offset_z + z);
|
||||
if (ps != nullptr)
|
||||
{
|
||||
ps->tertiary_colour = vehicle->colours_extended;
|
||||
|
@ -70,8 +70,7 @@ void vehicle_visual_submarine(paint_session * session, sint32 x, sint32 imageDir
|
|||
|
||||
image_id = (baseImage_id + 1) | (vehicle->colours.body_colour << 19) | (vehicle->colours.trim_colour << 24) |
|
||||
IMAGE_TYPE_REMAP_2_PLUS;
|
||||
ps = sub_98197C(session, image_id, 0, 0, bb.length_x, bb.length_y, 2, z, bb.offset_x, bb.offset_y, bb.offset_z + z - 10,
|
||||
get_current_rotation());
|
||||
ps = sub_98197C(session, image_id, 0, 0, bb.length_x, bb.length_y, 2, z, bb.offset_x, bb.offset_y, bb.offset_z + z - 10);
|
||||
if (ps != nullptr)
|
||||
{
|
||||
ps->tertiary_colour = vehicle->colours_extended;
|
||||
|
@ -98,7 +97,7 @@ static void submarine_ride_paint_track_station(
|
|||
if (direction & 1)
|
||||
{
|
||||
imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_SE_NW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 3, heightLower, 6, 0, heightLower, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 3, heightLower, 6, 0, heightLower);
|
||||
|
||||
paint_util_push_tunnel_right(session, height, TUNNEL_6);
|
||||
track_paint_util_draw_pier(session, ride, entranceStyle, position, direction, height, tileElement,
|
||||
|
@ -107,7 +106,7 @@ static void submarine_ride_paint_track_station(
|
|||
else
|
||||
{
|
||||
imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_NE_SW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 3, heightLower, 0, 6, heightLower, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 3, heightLower, 0, 6, heightLower);
|
||||
|
||||
paint_util_push_tunnel_left(session, height, TUNNEL_6);
|
||||
track_paint_util_draw_pier(session, ride, entranceStyle, position, direction, height, tileElement,
|
||||
|
@ -133,13 +132,13 @@ static void submarine_ride_paint_track_flat(
|
|||
if (direction & 1)
|
||||
{
|
||||
imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_SE_NW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 3, heightLower, 6, 0, heightLower, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 20, 32, 3, heightLower, 6, 0, heightLower);
|
||||
paint_util_push_tunnel_right(session, heightLower, TUNNEL_0);
|
||||
}
|
||||
else
|
||||
{
|
||||
imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_NE_SW | session->TrackColours[SCHEME_TRACK];
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 3, heightLower, 0, 6, heightLower, get_current_rotation());
|
||||
sub_98197C(session, imageId, 0, 0, 32, 20, 3, heightLower, 0, 6, heightLower);
|
||||
paint_util_push_tunnel_left(session, heightLower, TUNNEL_0);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue