Merge pull request #16777 from duncanspumpkin/paintReorg2

Apply regex on PaintAddImageAsChildRotated
This commit is contained in:
Michael Steenbeek 2022-03-13 14:44:55 +01:00 committed by GitHub
commit 37c0fffb99
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
43 changed files with 2259 additions and 1805 deletions

View File

@ -851,16 +851,6 @@ paint_struct* PaintAddImageAsChild(
return ps;
}
paint_struct* PaintAddImageAsChild(
paint_session& session, uint32_t image_id, int32_t x_offset, int32_t y_offset, int32_t bound_box_length_x,
int32_t bound_box_length_y, int32_t bound_box_length_z, int32_t z_offset, int32_t bound_box_offset_x,
int32_t bound_box_offset_y, int32_t bound_box_offset_z)
{
return PaintAddImageAsChild(
session, image_id, { x_offset, y_offset, z_offset }, { bound_box_length_x, bound_box_length_y, bound_box_length_z },
{ bound_box_offset_x, bound_box_offset_y, bound_box_offset_z });
}
/**
* rct2: 0x006881D0
*

View File

@ -308,10 +308,6 @@ paint_struct* PaintAddImageAsParent(
[[nodiscard]] paint_struct* PaintAddImageAsOrphan(
paint_session& session, ImageId image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxSize,
const CoordsXYZ& boundBoxOffset);
paint_struct* PaintAddImageAsChild(
paint_session& session, uint32_t image_id, int32_t x_offset, int32_t y_offset, int32_t bound_box_length_x,
int32_t bound_box_length_y, int32_t bound_box_length_z, int32_t z_offset, int32_t bound_box_offset_x,
int32_t bound_box_offset_y, int32_t bound_box_offset_z);
paint_struct* PaintAddImageAsChild(
paint_session& session, uint32_t image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxLength,
const CoordsXYZ& boundBoxOffset);
@ -319,10 +315,6 @@ paint_struct* PaintAddImageAsChild(
paint_session& session, ImageId image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxLength,
const CoordsXYZ& boundBoxOffset);
paint_struct* PaintAddImageAsChildRotated(
paint_session& session, uint8_t direction, uint32_t image_id, int32_t x_offset, int32_t y_offset,
int32_t bound_box_length_x, int32_t bound_box_length_y, int32_t bound_box_length_z, int32_t z_offset,
int32_t bound_box_offset_x, int32_t bound_box_offset_y, int32_t bound_box_offset_z);
paint_struct* PaintAddImageAsChildRotated(
paint_session& session, const uint8_t direction, const uint32_t image_id, const CoordsXYZ& offset,
const CoordsXYZ& boundBoxSize, const CoordsXYZ& boundBoxOffset);

View File

@ -38,23 +38,6 @@ paint_struct* PaintAddImageAsParentRotated(
return PaintAddImageAsParent(session, image_id, offset, boundBoxSize);
}
paint_struct* PaintAddImageAsChildRotated(
paint_session& session, uint8_t direction, uint32_t image_id, int32_t x_offset, int32_t y_offset,
int32_t bound_box_length_x, int32_t bound_box_length_y, int32_t bound_box_length_z, int32_t z_offset,
int32_t bound_box_offset_x, int32_t bound_box_offset_y, int32_t bound_box_offset_z)
{
if (direction & 1)
{
return PaintAddImageAsChild(
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 PaintAddImageAsChild(
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);
}
paint_struct* PaintAddImageAsChildRotated(
paint_session& session, const uint8_t direction, const uint32_t image_id, const CoordsXYZ& offset,
const CoordsXYZ& boundBoxSize, const CoordsXYZ& boundBoxOffset)

View File

@ -73,8 +73,8 @@ static void PaintRideEntranceExitScrollingText(
auto scroll = stringWidth > 0 ? (gCurrentTicks / 2) % stringWidth : 0;
PaintAddImageAsChild(
session, scrolling_text_setup(session, STR_BANNER_TEXT_FORMAT, ft, scroll, stationObj.ScrollingMode, COLOUR_BLACK), 0,
0, 28, 28, 51, height + stationObj.Height, 2, 2, height + stationObj.Height);
session, scrolling_text_setup(session, STR_BANNER_TEXT_FORMAT, ft, scroll, stationObj.ScrollingMode, COLOUR_BLACK),
{ 0, 0, height + stationObj.Height }, { 28, 28, 51 }, { 2, 2, height + stationObj.Height });
}
static void PaintRideEntranceExitLightEffects(paint_session& session, int32_t height, const EntranceElement& entranceEl)

View File

@ -469,8 +469,8 @@ static void sub_6A4101(
uint16_t scroll = stringWidth > 0 ? (gCurrentTicks / 2) % stringWidth : 0;
PaintAddImageAsChild(
session, scrolling_text_setup(session, STR_BANNER_TEXT_FORMAT, ft, scroll, scrollingMode, COLOUR_BLACK), 0, 0,
1, 1, 21, height + 7, boundBoxOffsets.x, boundBoxOffsets.y, boundBoxOffsets.z);
session, scrolling_text_setup(session, STR_BANNER_TEXT_FORMAT, ft, scroll, scrollingMode, COLOUR_BLACK),
{ 0, 0, height + 7 }, { 1, 1, 21 }, boundBoxOffsets);
}
session.InteractionType = ViewportInteractionItem::Footpath;

View File

@ -299,12 +299,12 @@ void track_paint_util_paint_fences(
if (edges & EDGE_NW && track_paint_util_has_fence(EDGE_NW, position, trackElement, ride, rotation))
{
imageId = fenceSprites[3] | colourFlags;
PaintAddImageAsChild(session, imageId, 0, 0, 32, 1, 7, height, 0, 2, height + 2);
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 32, 1, 7 }, { 0, 2, height + 2 });
}
if (edges & EDGE_NE && track_paint_util_has_fence(EDGE_NE, position, trackElement, ride, rotation))
{
imageId = fenceSprites[0] | colourFlags;
PaintAddImageAsChild(session, imageId, 0, 0, 1, 32, 7, height, 2, 0, height + 2);
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 1, 32, 7 }, { 2, 0, height + 2 });
}
if (edges & EDGE_SE && track_paint_util_has_fence(EDGE_SE, position, trackElement, ride, rotation))
{
@ -2044,11 +2044,11 @@ void track_paint_util_spinning_tunnel_paint(paint_session& session, int8_t thick
uint32_t imageId = trackSpritesGhostTrainSpinningTunnel[direction & 1][0][frame] | colourFlags;
if (direction == 0 || direction == 2)
{
PaintAddImageAsChild(session, imageId, 0, 0, 28, 20, thickness, height, 2, 6, height);
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 28, 20, thickness }, { 2, 6, height });
}
else
{
PaintAddImageAsChild(session, imageId, 0, 0, 20, 28, thickness, height, 6, 2, height);
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 20, 28, thickness }, { 6, 2, height });
}
imageId = trackSpritesGhostTrainSpinningTunnel[direction & 1][1][frame] | colourFlags;

View File

@ -3027,7 +3027,7 @@ static void vehicle_visual_splash1_effect(paint_session& session, int32_t z, con
}
int32_t image_id = 29014 + ((((vehicle->sprite_direction / 8) + session.CurrentRotation) & 3) * 8)
+ ((gCurrentTicks / 2) & 7);
PaintAddImageAsChild(session, image_id, 0, 0, 0, 0, 0, z, 0, 0, z);
PaintAddImageAsChild(session, image_id, { 0, 0, z }, { 0, 0, 0 }, { 0, 0, z });
}
/**
@ -3050,7 +3050,7 @@ static void vehicle_visual_splash2_effect(paint_session& session, int32_t z, con
}
int32_t image_id = 29046 + ((((vehicle->sprite_direction / 8) + session.CurrentRotation) & 3) * 8)
+ ((gCurrentTicks / 2) & 7);
PaintAddImageAsChild(session, image_id, 0, 0, 0, 0, 0, z, 0, 0, z);
PaintAddImageAsChild(session, image_id, { 0, 0, z }, { 0, 0, 0 }, { 0, 0, z });
}
/**
@ -3073,7 +3073,7 @@ static void vehicle_visual_splash3_effect(paint_session& session, int32_t z, con
}
int32_t image_id = 29014 + ((((vehicle->sprite_direction / 8) + session.CurrentRotation) & 3) * 8)
+ ((gCurrentTicks / 2) & 7);
PaintAddImageAsChild(session, image_id, 0, 0, 0, 0, 0, z, 0, 0, z);
PaintAddImageAsChild(session, image_id, { 0, 0, z }, { 0, 0, 0 }, { 0, 0, z });
}
/**
@ -3101,7 +3101,7 @@ static void vehicle_visual_splash4_effect(paint_session& session, int32_t z, con
}
int32_t image_id = 29078 + ((((vehicle->sprite_direction / 8) + session.CurrentRotation) & 3) * 8)
+ ((gCurrentTicks / 2) & 7);
PaintAddImageAsChild(session, image_id, 0, 0, 1, 1, 0, z, 0, 0, z);
PaintAddImageAsChild(session, image_id, { 0, 0, z }, { 1, 1, 0 }, { 0, 0, z });
}
/**
@ -3133,7 +3133,7 @@ static void vehicle_visual_splash5_effect(paint_session& session, int32_t z, con
}
int32_t image_id = 29078 + ((((vehicle->sprite_direction / 8) + session.CurrentRotation) & 3) * 8)
+ ((gCurrentTicks / 2) & 7);
PaintAddImageAsChild(session, image_id, 0, 0, 1, 1, 0, z, 0, 0, z);
PaintAddImageAsChild(session, image_id, { 0, 0, z }, { 1, 1, 0 }, { 0, 0, z });
}
void vehicle_visual_splash_effect(

View File

@ -213,7 +213,8 @@ static void air_powered_vertical_rc_track_station(
session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_MISC], { 0, 0, height - 2 }, { 32, 28, 1 },
{ 0, 2, height });
PaintAddImageAsChildRotated(
session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, height);
session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_TRACK], { 0, 0, height }, { 32, 20, 1 },
{ 0, 6, height });
wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]);
@ -663,7 +664,8 @@ static void air_powered_vertical_rc_track_vertical_slope_up(
bbHeight = bbHeights12[trackSequence];
PaintAddImageAsParentRotated(
session, direction, supportsImageId, { 0, 0, height }, { 20, 32, bbHeight }, { 0, 6, height });
PaintAddImageAsChildRotated(session, direction, trackImageId, 0, 0, 20, 32, bbHeight, height, 0, 6, height);
PaintAddImageAsChildRotated(
session, direction, trackImageId, { 0, 0, height }, { 20, 32, bbHeight }, { 0, 6, height });
wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]);
@ -681,14 +683,16 @@ static void air_powered_vertical_rc_track_vertical_slope_up(
PaintAddImageAsParentRotated(
session, direction, supportsImageId, { 0, 0, height }, { 32, 20, bbHeight }, { 0, 6, height });
PaintAddImageAsChildRotated(session, direction, trackImageId, 0, 0, 32, 20, bbHeight, height, 0, 6, height);
PaintAddImageAsChildRotated(
session, direction, trackImageId, { 0, 0, height }, { 32, 20, bbHeight }, { 0, 6, height });
}
else
{
bbHeight = bbHeights12[trackSequence];
PaintAddImageAsParentRotated(
session, direction, supportsImageId, { 0, 0, height }, { 32, 20, bbHeight }, { 0, 6, height });
PaintAddImageAsChildRotated(session, direction, trackImageId, 0, 0, 32, 20, bbHeight, height, 0, 6, height);
PaintAddImageAsChildRotated(
session, direction, trackImageId, { 0, 0, height }, { 32, 20, bbHeight }, { 0, 6, height });
}
wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]);
@ -707,14 +711,16 @@ static void air_powered_vertical_rc_track_vertical_slope_up(
bbHeight = bbHeights03[trackSequence];
PaintAddImageAsParentRotated(
session, direction, supportsImageId, { 0, 0, height }, { 32, 20, bbHeight }, { 0, 6, height });
PaintAddImageAsChildRotated(session, direction, trackImageId, 0, 0, 32, 20, bbHeight, height, 0, 6, height);
PaintAddImageAsChildRotated(
session, direction, trackImageId, { 0, 0, height }, { 32, 20, bbHeight }, { 0, 6, height });
}
else
{
bbHeight = bbHeights12[trackSequence];
PaintAddImageAsParentRotated(
session, direction, trackImageId, { 0, 0, height }, { 32, 20, bbHeight }, { 0, 6, height });
PaintAddImageAsChildRotated(session, direction, supportsImageId, 0, 0, 32, 20, bbHeight, height, 0, 6, height);
PaintAddImageAsChildRotated(
session, direction, supportsImageId, { 0, 0, height }, { 32, 20, bbHeight }, { 0, 6, height });
}
wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]);
@ -734,7 +740,8 @@ static void air_powered_vertical_rc_track_vertical_slope_up(
floorImageId = SPR_FLOOR_PLANKS | session.TrackColours[SCHEME_SUPPORTS];
}
PaintAddImageAsParent(session, floorImageId, { 0, 0, height }, { 26, 26, 126 }, { 3, 3, height });
PaintAddImageAsChildRotated(session, direction, supportsImageId, 0, 0, 26, 26, 126, height, 3, 3, height);
PaintAddImageAsChildRotated(
session, direction, supportsImageId, { 0, 0, height }, { 26, 26, 126 }, { 3, 3, height });
}
else
{
@ -749,13 +756,15 @@ static void air_powered_vertical_rc_track_vertical_slope_up(
{
PaintAddImageAsParentRotated(
session, direction, supportsImageId, { 0, 0, height }, { 5, 20, 79 }, { 0, 6, height + 128 });
PaintAddImageAsChildRotated(session, direction, trackImageId, 0, 0, 5, 20, 79, height, 0, 6, height + 128);
PaintAddImageAsChildRotated(
session, direction, trackImageId, { 0, 0, height }, { 5, 20, 79 }, { 0, 6, height + 128 });
}
else
{
PaintAddImageAsParentRotated(
session, direction, trackImageId, { 0, 0, height }, { 1, 20, 126 }, { 27, 6, height });
PaintAddImageAsChildRotated(session, direction, supportsImageId, 0, 0, 1, 20, 126, height, 27, 6, height);
PaintAddImageAsChildRotated(
session, direction, supportsImageId, { 0, 0, height }, { 1, 20, 126 }, { 27, 6, height });
}
wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]);
@ -842,12 +851,12 @@ static void air_powered_vertical_rc_track_vertical_top(
if (direction == 0)
{
PaintAddImageAsParentRotated(session, direction, imageIdS, { 0, 0, height }, { 32, 20, 15 }, { 0, 6, height });
PaintAddImageAsChildRotated(session, direction, imageIdT, 0, 0, 31, 20, 15, height, 1, 6, height);
PaintAddImageAsChildRotated(session, direction, imageIdT, { 0, 0, height }, { 31, 20, 15 }, { 1, 6, height });
}
else
{
PaintAddImageAsParentRotated(session, direction, imageIdS, { 0, 0, height }, { 5, 20, 1 }, { 24, 6, height });
PaintAddImageAsChildRotated(session, direction, imageIdT, 0, 0, 5, 20, 1, height, 24, 6, height);
PaintAddImageAsChildRotated(session, direction, imageIdT, { 0, 0, height }, { 5, 20, 1 }, { 24, 6, height });
}
break;
case 1:
@ -880,12 +889,12 @@ static void air_powered_vertical_rc_track_vertical_top(
if (direction == 0)
{
PaintAddImageAsParentRotated(session, direction, imageIdS, { 0, 0, height }, { 5, 20, 1 }, { 24, 6, height });
PaintAddImageAsChildRotated(session, direction, imageIdT, 0, 0, 5, 20, 1, height, 24, 6, height);
PaintAddImageAsChildRotated(session, direction, imageIdT, { 0, 0, height }, { 5, 20, 1 }, { 24, 6, height });
}
else
{
PaintAddImageAsParentRotated(session, direction, imageIdS, { 0, 0, height }, { 32, 20, 15 }, { 0, 6, height });
PaintAddImageAsChildRotated(session, direction, imageIdT, 0, 0, 32, 20, 15, height, 0, 6, height);
PaintAddImageAsChildRotated(session, direction, imageIdT, { 0, 0, height }, { 32, 20, 15 }, { 0, 6, height });
}
break;
}

View File

@ -91,8 +91,8 @@ static void compact_inverted_rc_track_station(
session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_TRACK], { 0, 0, height + 29 }, { 32, 20, 3 },
{ 0, 6, height + 29 });
PaintAddImageAsChildRotated(
session, direction, imageIds[direction][2] | session.TrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 3, height + 29, 0, 6,
height + 29);
session, direction, imageIds[direction][2] | session.TrackColours[SCHEME_SUPPORTS], { 0, 6, height + 29 },
{ 32, 20, 3 }, { 0, 6, height + 29 });
track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 11);
track_paint_util_draw_station_inverted(session, ride, direction, height, trackElement, STATION_VARIANT_TALL);
paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_INVERTED_9);

View File

@ -157,8 +157,8 @@ static void flying_rc_track_station(
session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_TRACK], { 0, 0, height + 24 },
{ 32, 20, 3 }, { 0, 6, height + 24 });
PaintAddImageAsChildRotated(
session, direction, imageIds[direction][2] | session.TrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 1, height + 24, 0,
6, height + 24);
session, direction, imageIds[direction][2] | session.TrackColours[SCHEME_SUPPORTS], { 0, 6, height + 24 },
{ 32, 20, 1 }, { 0, 6, height + 24 });
track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 11);
track_paint_util_draw_station_inverted(session, ride, direction, height, trackElement, STATION_VARIANT_1);
}

View File

@ -839,14 +839,14 @@ static void heartline_twister_rc_track_heartline_transfer_up(
session, direction, session.TrackColours[SCHEME_TRACK] | 21314, { 0, 0, height + 8 }, { 32, 20, 2 },
{ 0, 6, height + 8 });
PaintAddImageAsChildRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 21308, 0, 0, 32, 20, 2, height + 16, 0, 6,
height + 16);
session, direction, session.TrackColours[SCHEME_TRACK] | 21308, { 0, 0, height + 16 }, { 32, 20, 2 },
{ 0, 6, height + 16 });
PaintAddImageAsParentRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 21318, { 0, 0, height + 8 }, { 32, 1, 34 },
{ 0, 27, height + 8 });
PaintAddImageAsChildRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 21312, 0, 0, 32, 1, 34, height + 16, 0, 27,
height + 16);
session, direction, session.TrackColours[SCHEME_TRACK] | 21312, { 0, 0, height + 16 }, { 32, 1, 34 },
{ 0, 27, height + 16 });
wooden_a_supports_paint_setup(session, 6, 5, height + 8, session.TrackColours[SCHEME_SUPPORTS]);
break;
case 1:
@ -854,14 +854,14 @@ static void heartline_twister_rc_track_heartline_transfer_up(
session, direction, session.TrackColours[SCHEME_TRACK] | 21315, { 0, 0, height + 8 }, { 32, 20, 2 },
{ 0, 6, height + 8 });
PaintAddImageAsChildRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 21309, 0, 0, 32, 20, 2, height + 16, 0, 6,
height + 16);
session, direction, session.TrackColours[SCHEME_TRACK] | 21309, { 0, 0, height + 16 }, { 32, 20, 2 },
{ 0, 6, height + 16 });
PaintAddImageAsParentRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 21319, { 0, 0, height + 8 }, { 32, 1, 34 },
{ 0, 27, height + 8 });
PaintAddImageAsChildRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 21313, 0, 0, 32, 1, 34, height + 16, 0, 27,
height + 16);
session, direction, session.TrackColours[SCHEME_TRACK] | 21313, { 0, 0, height + 16 }, { 32, 1, 34 },
{ 0, 27, height + 16 });
wooden_a_supports_paint_setup(session, 7, 6, height + 8, session.TrackColours[SCHEME_SUPPORTS]);
break;
case 2:
@ -869,14 +869,14 @@ static void heartline_twister_rc_track_heartline_transfer_up(
session, direction, session.TrackColours[SCHEME_TRACK] | 21316, { 0, 0, height + 8 }, { 32, 20, 2 },
{ 0, 6, height + 8 });
PaintAddImageAsChildRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 21306, 0, 0, 32, 20, 2, height + 16, 0, 6,
height + 16);
session, direction, session.TrackColours[SCHEME_TRACK] | 21306, { 0, 0, height + 16 }, { 32, 20, 2 },
{ 0, 6, height + 16 });
PaintAddImageAsParentRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 21320, { 0, 0, height + 8 }, { 32, 1, 34 },
{ 0, 27, height + 8 });
PaintAddImageAsChildRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 21310, 0, 0, 32, 1, 34, height + 16, 0, 27,
height + 16);
session, direction, session.TrackColours[SCHEME_TRACK] | 21310, { 0, 0, height + 16 }, { 32, 1, 34 },
{ 0, 27, height + 16 });
wooden_a_supports_paint_setup(session, 6, 7, height + 8, session.TrackColours[SCHEME_SUPPORTS]);
break;
case 3:
@ -884,14 +884,14 @@ static void heartline_twister_rc_track_heartline_transfer_up(
session, direction, session.TrackColours[SCHEME_TRACK] | 21317, { 0, 0, height + 8 }, { 32, 20, 2 },
{ 0, 6, height + 8 });
PaintAddImageAsChildRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 21307, 0, 0, 32, 20, 2, height + 16, 0, 6,
height + 16);
session, direction, session.TrackColours[SCHEME_TRACK] | 21307, { 0, 0, height + 16 }, { 32, 20, 2 },
{ 0, 6, height + 16 });
PaintAddImageAsParentRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 21321, { 0, 0, height + 8 }, { 32, 1, 34 },
{ 0, 27, height + 8 });
PaintAddImageAsChildRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 21311, 0, 0, 32, 1, 34, height + 16, 0, 27,
height + 16);
session, direction, session.TrackColours[SCHEME_TRACK] | 21311, { 0, 0, height + 16 }, { 32, 1, 34 },
{ 0, 27, height + 16 });
wooden_a_supports_paint_setup(session, 7, 8, height + 8, session.TrackColours[SCHEME_SUPPORTS]);
break;
}
@ -1053,14 +1053,14 @@ static void heartline_twister_rc_track_heartline_transfer_down(
session, direction, session.TrackColours[SCHEME_TRACK] | 21314, { 0, 0, height + 8 }, { 32, 20, 2 },
{ 0, 6, height + 8 });
PaintAddImageAsChildRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 21308, 0, 0, 32, 20, 2, height + 16, 0, 6,
height + 16);
session, direction, session.TrackColours[SCHEME_TRACK] | 21308, { 0, 0, height + 16 }, { 32, 20, 2 },
{ 0, 6, height + 16 });
PaintAddImageAsParentRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 21318, { 0, 0, height + 8 }, { 32, 1, 34 },
{ 0, 27, height + 8 });
PaintAddImageAsChildRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 21312, 0, 0, 32, 1, 34, height + 16, 0, 27,
height + 16);
session, direction, session.TrackColours[SCHEME_TRACK] | 21312, { 0, 0, height + 16 }, { 32, 1, 34 },
{ 0, 27, height + 16 });
wooden_a_supports_paint_setup(session, 6, 5, height + 8, session.TrackColours[SCHEME_SUPPORTS]);
break;
case 1:
@ -1068,14 +1068,14 @@ static void heartline_twister_rc_track_heartline_transfer_down(
session, direction, session.TrackColours[SCHEME_TRACK] | 21315, { 0, 0, height + 8 }, { 32, 20, 2 },
{ 0, 6, height + 8 });
PaintAddImageAsChildRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 21309, 0, 0, 32, 20, 2, height + 16, 0, 6,
height + 16);
session, direction, session.TrackColours[SCHEME_TRACK] | 21309, { 0, 0, height + 16 }, { 32, 20, 2 },
{ 0, 6, height + 16 });
PaintAddImageAsParentRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 21319, { 0, 0, height + 8 }, { 32, 1, 34 },
{ 0, 27, height + 8 });
PaintAddImageAsChildRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 21313, 0, 0, 32, 1, 34, height + 16, 0, 27,
height + 16);
session, direction, session.TrackColours[SCHEME_TRACK] | 21313, { 0, 0, height + 16 }, { 32, 1, 34 },
{ 0, 27, height + 16 });
wooden_a_supports_paint_setup(session, 7, 6, height + 8, session.TrackColours[SCHEME_SUPPORTS]);
break;
case 2:
@ -1083,14 +1083,14 @@ static void heartline_twister_rc_track_heartline_transfer_down(
session, direction, session.TrackColours[SCHEME_TRACK] | 21316, { 0, 0, height + 8 }, { 32, 20, 2 },
{ 0, 6, height + 8 });
PaintAddImageAsChildRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 21306, 0, 0, 32, 20, 2, height + 16, 0, 6,
height + 16);
session, direction, session.TrackColours[SCHEME_TRACK] | 21306, { 0, 0, height + 16 }, { 32, 20, 2 },
{ 0, 6, height + 16 });
PaintAddImageAsParentRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 21320, { 0, 0, height + 8 }, { 32, 1, 34 },
{ 0, 27, height + 8 });
PaintAddImageAsChildRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 21310, 0, 0, 32, 1, 34, height + 16, 0, 27,
height + 16);
session, direction, session.TrackColours[SCHEME_TRACK] | 21310, { 0, 0, height + 16 }, { 32, 1, 34 },
{ 0, 27, height + 16 });
wooden_a_supports_paint_setup(session, 6, 7, height + 8, session.TrackColours[SCHEME_SUPPORTS]);
break;
case 3:
@ -1098,14 +1098,14 @@ static void heartline_twister_rc_track_heartline_transfer_down(
session, direction, session.TrackColours[SCHEME_TRACK] | 21317, { 0, 0, height + 8 }, { 32, 20, 2 },
{ 0, 6, height + 8 });
PaintAddImageAsChildRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 21307, 0, 0, 32, 20, 2, height + 16, 0, 6,
height + 16);
session, direction, session.TrackColours[SCHEME_TRACK] | 21307, { 0, 0, height + 16 }, { 32, 20, 2 },
{ 0, 6, height + 16 });
PaintAddImageAsParentRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 21321, { 0, 0, height + 8 }, { 32, 1, 34 },
{ 0, 27, height + 8 });
PaintAddImageAsChildRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 21311, 0, 0, 32, 1, 34, height + 16, 0, 27,
height + 16);
session, direction, session.TrackColours[SCHEME_TRACK] | 21311, { 0, 0, height + 16 }, { 32, 1, 34 },
{ 0, 27, height + 16 });
wooden_a_supports_paint_setup(session, 7, 8, height + 8, session.TrackColours[SCHEME_SUPPORTS]);
break;
}

View File

@ -99,8 +99,8 @@ static void inverted_hairpin_rc_track_station(
session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_TRACK], { 0, 0, height + 24 }, { 32, 20, 3 },
{ 0, 6, height + 24 });
PaintAddImageAsChildRotated(
session, direction, imageIds[direction][2] | session.TrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 1, height + 24, 0, 6,
height + 24);
session, direction, imageIds[direction][2] | session.TrackColours[SCHEME_SUPPORTS], { 0, 6, height + 24 },
{ 32, 20, 1 }, { 0, 6, height + 24 });
track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 11);
track_paint_util_draw_station_inverted(session, ride, direction, height, trackElement, STATION_VARIANT_1);
paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT);

View File

@ -70,8 +70,8 @@ static void inverted_impulse_rc_track_station(
session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_TRACK], { 0, 0, height + 29 }, { 32, 20, 3 },
{ 0, 6, height + 29 });
PaintAddImageAsChildRotated(
session, direction, imageIds[direction][2] | session.TrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 3, height + 29, 0, 6,
height + 29);
session, direction, imageIds[direction][2] | session.TrackColours[SCHEME_SUPPORTS], { 0, 6, height + 29 },
{ 32, 20, 3 }, { 0, 6, height + 29 });
track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 11);
track_paint_util_draw_station_inverted(session, ride, direction, height, trackElement, STATION_VARIANT_TALL);
paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_INVERTED_9);

View File

@ -90,8 +90,8 @@ static void inverted_rc_track_station(
session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_TRACK], { 0, 0, height + 29 }, { 32, 20, 3 },
{ 0, 6, height + 29 });
PaintAddImageAsChildRotated(
session, direction, imageIds[direction][2] | session.TrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 3, height + 29, 0, 6,
height + 29);
session, direction, imageIds[direction][2] | session.TrackColours[SCHEME_SUPPORTS], { 0, 6, height + 29 },
{ 32, 20, 3 }, { 0, 6, height + 29 });
track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 3);
track_paint_util_draw_station_inverted(session, ride, direction, height, trackElement, STATION_VARIANT_TALL);
paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_INVERTED_9);

View File

@ -1886,7 +1886,7 @@ void junior_rc_paint_station(
{
imageId = junior_rc_track_pieces_station[false][direction] | session.TrackColours[SCHEME_TRACK];
}
PaintAddImageAsChild(session, imageId, 0, 6, 32, 20, 1, height, 0, 0, height);
PaintAddImageAsChild(session, imageId, { 0, 6, height }, { 32, 20, 1 }, { 0, 0, height });
metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]);
metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]);
@ -1908,7 +1908,7 @@ void junior_rc_paint_station(
{
imageId = junior_rc_track_pieces_station[false][direction] | session.TrackColours[SCHEME_TRACK];
}
PaintAddImageAsChild(session, imageId, 6, 0, 20, 32, 1, height, 0, 0, height);
PaintAddImageAsChild(session, imageId, { 6, 0, height }, { 20, 32, 1 }, { 0, 0, height });
metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]);
metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]);

View File

@ -157,8 +157,8 @@ static void lay_down_rc_track_station(
session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_TRACK], { 0, 0, height + 24 },
{ 32, 20, 3 }, { 0, 6, height + 24 });
PaintAddImageAsChildRotated(
session, direction, imageIds[direction][2] | session.TrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 1, height + 24, 0,
6, height + 24);
session, direction, imageIds[direction][2] | session.TrackColours[SCHEME_SUPPORTS], { 0, 6, height + 24 },
{ 32, 20, 1 }, { 0, 6, height + 24 });
track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 11);
track_paint_util_draw_station_inverted(session, ride, direction, height, trackElement, STATION_VARIANT_1);
paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_INVERTED_9);

View File

@ -2224,8 +2224,8 @@ static void looping_rc_track_left_vertical_loop(
metal_a_supports_paint_setup(
session, METAL_SUPPORTS_THICK_CENTRED, 1, 0, height - 8, session.TrackColours[SCHEME_TRACK]);
PaintAddImageAsChildRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 15364, 16, 0, 3, 16, 119, height, 16, 0,
height);
session, direction, session.TrackColours[SCHEME_TRACK] | 15364, { 16, 0, height }, { 3, 16, 119 },
{ 16, 0, height });
break;
case 1:
PaintAddImageAsParentRotated(
@ -2234,8 +2234,8 @@ static void looping_rc_track_left_vertical_loop(
metal_a_supports_paint_setup(
session, METAL_SUPPORTS_THICK_ALT_CENTRED, 0, 0, height - 8, session.TrackColours[SCHEME_TRACK]);
PaintAddImageAsChildRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 15366, 12, 0, 3, 16, 119, height, 12, 0,
height);
session, direction, session.TrackColours[SCHEME_TRACK] | 15366, { 12, 0, height }, { 3, 16, 119 },
{ 12, 0, height });
break;
case 2:
PaintAddImageAsParentRotated(
@ -2244,8 +2244,8 @@ static void looping_rc_track_left_vertical_loop(
metal_a_supports_paint_setup(
session, METAL_SUPPORTS_THICK, 2, 0, height - 8, session.TrackColours[SCHEME_TRACK]);
PaintAddImageAsChildRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 15365, 10, 16, 4, 16, 119, height, 10, 16,
height);
session, direction, session.TrackColours[SCHEME_TRACK] | 15365, { 10, 16, height }, { 4, 16, 119 },
{ 10, 16, height });
break;
case 3:
PaintAddImageAsParentRotated(
@ -2254,8 +2254,8 @@ static void looping_rc_track_left_vertical_loop(
metal_a_supports_paint_setup(
session, METAL_SUPPORTS_THICK_ALT, 3, 0, height - 8, session.TrackColours[SCHEME_TRACK]);
PaintAddImageAsChildRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 15367, 16, 16, 2, 16, 119, height, 16, 16,
height);
session, direction, session.TrackColours[SCHEME_TRACK] | 15367, { 16, 16, height }, { 2, 16, 119 },
{ 16, 16, height });
break;
}
paint_util_set_segment_support_height(
@ -2332,8 +2332,8 @@ static void looping_rc_track_left_vertical_loop(
metal_a_supports_paint_setup(
session, METAL_SUPPORTS_THICK, 2, 0, height - 8, session.TrackColours[SCHEME_TRACK]);
PaintAddImageAsChildRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 15365, 10, 16, 4, 16, 119, height, 10, 16,
height);
session, direction, session.TrackColours[SCHEME_TRACK] | 15365, { 10, 16, height }, { 4, 16, 119 },
{ 10, 16, height });
break;
case 1:
PaintAddImageAsParentRotated(
@ -2342,8 +2342,8 @@ static void looping_rc_track_left_vertical_loop(
metal_a_supports_paint_setup(
session, METAL_SUPPORTS_THICK_ALT, 3, 0, height - 8, session.TrackColours[SCHEME_TRACK]);
PaintAddImageAsChildRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 15367, 16, 16, 2, 16, 119, height, 16, 16,
height);
session, direction, session.TrackColours[SCHEME_TRACK] | 15367, { 16, 16, height }, { 2, 16, 119 },
{ 16, 16, height });
break;
case 2:
PaintAddImageAsParentRotated(
@ -2352,8 +2352,8 @@ static void looping_rc_track_left_vertical_loop(
metal_a_supports_paint_setup(
session, METAL_SUPPORTS_THICK_CENTRED, 1, 0, height - 8, session.TrackColours[SCHEME_TRACK]);
PaintAddImageAsChildRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 15364, 16, 0, 3, 16, 119, height, 16, 0,
height);
session, direction, session.TrackColours[SCHEME_TRACK] | 15364, { 16, 0, height }, { 3, 16, 119 },
{ 16, 0, height });
break;
case 3:
PaintAddImageAsParentRotated(
@ -2362,8 +2362,8 @@ static void looping_rc_track_left_vertical_loop(
metal_a_supports_paint_setup(
session, METAL_SUPPORTS_THICK_ALT_CENTRED, 0, 0, height - 8, session.TrackColours[SCHEME_TRACK]);
PaintAddImageAsChildRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 15366, 12, 0, 3, 16, 119, height, 12, 0,
height);
session, direction, session.TrackColours[SCHEME_TRACK] | 15366, { 12, 0, height }, { 3, 16, 119 },
{ 12, 0, height });
break;
}
paint_util_set_segment_support_height(
@ -2501,8 +2501,8 @@ static void looping_rc_track_right_vertical_loop(
metal_a_supports_paint_setup(
session, METAL_SUPPORTS_THICK, 3, 0, height - 8, session.TrackColours[SCHEME_TRACK]);
PaintAddImageAsChildRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 15384, 16, 16, 2, 16, 119, height, 16, 16,
height);
session, direction, session.TrackColours[SCHEME_TRACK] | 15384, { 16, 16, height }, { 2, 16, 119 },
{ 16, 16, height });
break;
case 1:
PaintAddImageAsParentRotated(
@ -2511,8 +2511,8 @@ static void looping_rc_track_right_vertical_loop(
metal_a_supports_paint_setup(
session, METAL_SUPPORTS_THICK_ALT, 1, 0, height - 8, session.TrackColours[SCHEME_TRACK]);
PaintAddImageAsChildRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 15386, 10, 16, 4, 16, 119, height, 10, 16,
height);
session, direction, session.TrackColours[SCHEME_TRACK] | 15386, { 10, 16, height }, { 4, 16, 119 },
{ 10, 16, height });
break;
case 2:
PaintAddImageAsParentRotated(
@ -2521,8 +2521,8 @@ static void looping_rc_track_right_vertical_loop(
metal_a_supports_paint_setup(
session, METAL_SUPPORTS_THICK_CENTRED, 0, 0, height - 8, session.TrackColours[SCHEME_TRACK]);
PaintAddImageAsChildRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 15385, 12, 0, 3, 16, 119, height, 12, 0,
height);
session, direction, session.TrackColours[SCHEME_TRACK] | 15385, { 12, 0, height }, { 3, 16, 119 },
{ 12, 0, height });
break;
case 3:
PaintAddImageAsParentRotated(
@ -2531,8 +2531,8 @@ static void looping_rc_track_right_vertical_loop(
metal_a_supports_paint_setup(
session, METAL_SUPPORTS_THICK_ALT_CENTRED, 2, 0, height - 8, session.TrackColours[SCHEME_TRACK]);
PaintAddImageAsChildRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 15387, 16, 0, 2, 16, 119, height, 16, 0,
height);
session, direction, session.TrackColours[SCHEME_TRACK] | 15387, { 16, 0, height }, { 2, 16, 119 },
{ 16, 0, height });
break;
}
paint_util_set_general_support_height(session, height + 168, 0x20);
@ -2597,8 +2597,8 @@ static void looping_rc_track_right_vertical_loop(
metal_a_supports_paint_setup(
session, METAL_SUPPORTS_THICK_CENTRED, 0, 0, height - 8, session.TrackColours[SCHEME_TRACK]);
PaintAddImageAsChildRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 15385, 12, 0, 3, 16, 119, height, 12, 0,
height);
session, direction, session.TrackColours[SCHEME_TRACK] | 15385, { 12, 0, height }, { 3, 16, 119 },
{ 12, 0, height });
break;
case 1:
PaintAddImageAsParentRotated(
@ -2607,8 +2607,8 @@ static void looping_rc_track_right_vertical_loop(
metal_a_supports_paint_setup(
session, METAL_SUPPORTS_THICK_ALT_CENTRED, 2, 0, height - 8, session.TrackColours[SCHEME_TRACK]);
PaintAddImageAsChildRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 15387, 16, 0, 2, 16, 119, height, 16, 0,
height);
session, direction, session.TrackColours[SCHEME_TRACK] | 15387, { 16, 0, height }, { 2, 16, 119 },
{ 16, 0, height });
break;
case 2:
PaintAddImageAsParentRotated(
@ -2617,8 +2617,8 @@ static void looping_rc_track_right_vertical_loop(
metal_a_supports_paint_setup(
session, METAL_SUPPORTS_THICK, 3, 0, height - 8, session.TrackColours[SCHEME_TRACK]);
PaintAddImageAsChildRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 15384, 16, 16, 2, 16, 119, height, 16, 16,
height);
session, direction, session.TrackColours[SCHEME_TRACK] | 15384, { 16, 16, height }, { 2, 16, 119 },
{ 16, 16, height });
break;
case 3:
PaintAddImageAsParentRotated(
@ -2627,8 +2627,8 @@ static void looping_rc_track_right_vertical_loop(
metal_a_supports_paint_setup(
session, METAL_SUPPORTS_THICK_ALT, 1, 0, height - 8, session.TrackColours[SCHEME_TRACK]);
PaintAddImageAsChildRotated(
session, direction, session.TrackColours[SCHEME_TRACK] | 15386, 10, 16, 4, 16, 119, height, 10, 16,
height);
session, direction, session.TrackColours[SCHEME_TRACK] | 15386, { 10, 16, height }, { 4, 16, 119 },
{ 10, 16, height });
break;
}
paint_util_set_general_support_height(session, height + 168, 0x20);

View File

@ -109,14 +109,14 @@ static void mine_train_rc_track_station(
{
bool isClosed = trackElement.BlockBrakeClosed();
PaintAddImageAsChildRotated(
session, direction, _MineTrainBlockBrakeImages[direction][isClosed] | session.TrackColours[SCHEME_TRACK], 0, 0, 32,
20, 1, height, 0, 0, height);
session, direction, _MineTrainBlockBrakeImages[direction][isClosed] | session.TrackColours[SCHEME_TRACK],
{ 0, 0, height }, { 32, 20, 1 }, { 0, 0, height });
}
else
{
PaintAddImageAsChildRotated(
session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 0,
height);
session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_TRACK], { 0, 0, height }, { 32, 20, 1 },
{ 0, 0, height });
}
track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 3);
track_paint_util_draw_station(session, ride, direction, height, trackElement);

View File

@ -97,8 +97,8 @@ static void mini_suspended_rc_track_station(
PaintAddImageAsParentRotated(
session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_TRACK], { 0, 6, height + 24 }, { 32, 20, 1 });
PaintAddImageAsChildRotated(
session, direction, imageIds[direction][2] | session.TrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 1, height + 24, 0, 2,
height);
session, direction, imageIds[direction][2] | session.TrackColours[SCHEME_SUPPORTS], { 0, 6, height + 24 },
{ 32, 20, 1 }, { 0, 2, height });
track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 3);
track_paint_util_draw_station_inverted(session, ride, direction, height, trackElement, STATION_VARIANT_1);
paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT);

View File

@ -231,7 +231,7 @@ static void paint_reverse_freefall_rc_station(
// height += 2 (height)
imageId = reverse_freefall_rc_track_pieces_station[direction] | session.TrackColours[SCHEME_TRACK];
PaintAddImageAsChild(session, imageId, 0, 0, 32, 20, 1, height, 0, 6, height);
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 32, 20, 1 }, { 0, 6, height });
wooden_a_supports_paint_setup(session, (direction & 1) ? 1 : 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]);
paint_util_push_tunnel_left(session, height, TUNNEL_SQUARE_FLAT);
@ -244,7 +244,7 @@ static void paint_reverse_freefall_rc_station(
// height += 2 (height)
imageId = reverse_freefall_rc_track_pieces_station[direction] | session.TrackColours[SCHEME_TRACK];
PaintAddImageAsChild(session, imageId, 0, 0, 20, 32, 1, height, 6, 0, height);
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 20, 32, 1 }, { 6, 0, height });
wooden_a_supports_paint_setup(session, (direction & 1) ? 1 : 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]);
paint_util_push_tunnel_right(session, height, TUNNEL_SQUARE_FLAT);
@ -285,7 +285,8 @@ static void paint_reverse_freefall_rc_slope(
bbHeight = bbHeights03[trackSequence];
PaintAddImageAsParentRotated(
session, direction, supportsImageId, { 0, 0, height }, { 32, 20, bbHeight }, { 0, 6, height });
PaintAddImageAsChildRotated(session, direction, trackImageId, 0, 0, 32, 20, bbHeight, height, 0, 6, height);
PaintAddImageAsChildRotated(
session, direction, trackImageId, { 0, 0, height }, { 32, 20, bbHeight }, { 0, 6, height });
int32_t tunnelOffset = tunnelOffsets03[trackSequence];
if (direction & 1)
@ -302,7 +303,8 @@ static void paint_reverse_freefall_rc_slope(
bbHeight = bbHeights12[trackSequence];
PaintAddImageAsParentRotated(
session, direction, trackImageId, { 0, 0, height }, { 32, 20, bbHeight }, { 0, 6, height });
PaintAddImageAsChildRotated(session, direction, supportsImageId, 0, 0, 32, 20, bbHeight, height, 0, 6, height);
PaintAddImageAsChildRotated(
session, direction, supportsImageId, { 0, 0, height }, { 32, 20, bbHeight }, { 0, 6, height });
}
wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]);
@ -323,8 +325,8 @@ static void paint_reverse_freefall_rc_slope(
}
PaintAddImageAsParent(session, floorImageId, { 0, 0, height }, { 26, 26, 126 }, { 3, 3, height });
PaintAddImageAsChildRotated(
session, direction, supportsImageId, 0, 0, isDirection03 ? 26 : 18, 26, 126, height, isDirection03 ? 3 : 11,
3, height);
session, direction, supportsImageId, { 0, 0, height }, { isDirection03 ? 26 : 18, 26, 126 },
{ isDirection03 ? 3 : 11, 3, height });
}
else
{
@ -340,13 +342,15 @@ static void paint_reverse_freefall_rc_slope(
{
PaintAddImageAsParentRotated(
session, direction, supportsImageId, { 0, 0, height }, { 5, 20, 79 }, { 0, 6, height + 128 });
PaintAddImageAsChildRotated(session, direction, trackImageId, 0, 0, 5, 20, 79, height, 0, 6, height + 128);
PaintAddImageAsChildRotated(
session, direction, trackImageId, { 0, 0, height }, { 5, 20, 79 }, { 0, 6, height + 128 });
}
else
{
PaintAddImageAsParentRotated(
session, direction, trackImageId, { 0, 0, height }, { 1, 20, 126 }, { 27, 6, height });
PaintAddImageAsChildRotated(session, direction, supportsImageId, 0, 0, 1, 20, 126, height, 27, 6, height);
PaintAddImageAsChildRotated(
session, direction, supportsImageId, { 0, 0, height }, { 1, 20, 126 }, { 27, 6, height });
}
wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]);
paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0);

View File

@ -110,7 +110,8 @@ static void reverser_rc_track_station(
session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_MISC], { 0, 0, height }, { 32, 27, 2 },
{ 0, 2, height });
PaintAddImageAsChildRotated(
session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 27, 2, height, 0, 2, height);
session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_TRACK], { 0, 0, height }, { 32, 27, 2 },
{ 0, 2, height });
wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]);
track_paint_util_draw_station_2(session, ride, direction, height, trackElement, 9, 11);
paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT);

View File

@ -84,7 +84,8 @@ static void steeplechase_track_station(
session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_MISC], { 0, 0, height - 2 }, { 32, 28, 3 },
{ 0, 2, height });
PaintAddImageAsChildRotated(
session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_TRACK], 0, 6, 32, 20, 3, height, 0, 0, height);
session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_TRACK], { 0, 6, height }, { 32, 20, 3 },
{ 0, 0, height });
track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 3);
track_paint_util_draw_station(session, ride, direction, height, trackElement);
paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT);

View File

@ -90,8 +90,8 @@ static void suspended_swinging_rc_track_station(
session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_TRACK], { 0, 0, height + 29 }, { 32, 20, 3 },
{ 0, 6, height + 29 });
PaintAddImageAsChildRotated(
session, direction, imageIds[direction][2] | session.TrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 3, height + 29, 0, 6,
height + 29);
session, direction, imageIds[direction][2] | session.TrackColours[SCHEME_SUPPORTS], { 0, 6, height + 29 },
{ 32, 20, 3 }, { 0, 6, height + 29 });
track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 0);
track_paint_util_draw_station_inverted(session, ride, direction, height, trackElement, STATION_VARIANT_TALL);
paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_INVERTED_9);

View File

@ -211,8 +211,8 @@ void vehicle_visual_virginia_reel(
{
image_id = (baseImage_id + ((i + 1) * 72)) | SPRITE_ID_PALETTE_COLOUR_1(riding_peep_sprites[i]);
PaintAddImageAsChild(
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);
session, image_id, { 0, 0, z }, { bb->length_x, bb->length_y, bb->length_z },
{ bb->offset_x, bb->offset_y, bb->offset_z + z });
}
}
}
@ -437,7 +437,7 @@ static void paint_virginia_reel_station(
PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { 32, 28, 2 }, { 0, 2, height });
imageId = SPR_VIRGINIA_REEL_FLAT_SW_NE | session.TrackColours[SCHEME_TRACK];
PaintAddImageAsChild(session, imageId, 0, 0, 32, 20, 2, height, 0, 0, height);
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 32, 20, 2 }, { 0, 0, height });
paint_util_push_tunnel_left(session, height, TUNNEL_SQUARE_FLAT);
}
@ -447,7 +447,7 @@ static void paint_virginia_reel_station(
PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { 28, 32, 2 }, { 2, 0, height });
imageId = SPR_VIRGINIA_REEL_FLAT_NW_SE | session.TrackColours[SCHEME_TRACK];
PaintAddImageAsChild(session, imageId, 0, 0, 20, 32, 2, height, 0, 0, height);
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 20, 32, 2 }, { 0, 0, height });
paint_util_push_tunnel_right(session, height, TUNNEL_SQUARE_FLAT);
}

View File

@ -207,14 +207,14 @@ static void wild_mouse_track_station(
{
bool isClosed = trackElement.BlockBrakeClosed();
PaintAddImageAsChildRotated(
session, direction, _wild_mouse_block_brakes_image_ids[direction][isClosed] | session.TrackColours[SCHEME_TRACK], 0,
0, 32, 20, 2, height, 0, 0, height);
session, direction, _wild_mouse_block_brakes_image_ids[direction][isClosed] | session.TrackColours[SCHEME_TRACK],
{ 0, 0, height }, { 32, 20, 2 }, { 0, 0, height });
}
else
{
PaintAddImageAsChildRotated(
session, direction, _wild_mouse_brakes_image_ids[direction] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 2,
height, 0, 0, height);
session, direction, _wild_mouse_brakes_image_ids[direction] | session.TrackColours[SCHEME_TRACK], { 0, 0, height },
{ 32, 20, 2 }, { 0, 0, height });
}
track_paint_util_draw_station_metal_supports(session, direction, height, session.TrackColours[SCHEME_SUPPORTS]);
track_paint_util_draw_station(session, ride, direction, height, trackElement);

File diff suppressed because it is too large Load Diff

View File

@ -160,7 +160,8 @@ static void wooden_wild_mouse_track_station(
session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_MISC], { 0, 0, height - 2 }, { 32, 28, 1 },
{ 0, 2, height });
PaintAddImageAsChildRotated(
session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_TRACK], 0, 6, 32, 20, 1, height, 0, 0, height);
session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_TRACK], { 0, 6, height }, { 32, 20, 1 },
{ 0, 0, height });
wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]);
track_paint_util_draw_station(session, ride, direction, height, trackElement);
paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT);

View File

@ -138,12 +138,12 @@ static void PaintFerrisWheel(
if (edges & EDGE_NW && track_paint_util_has_fence(EDGE_NW, session.MapPosition, trackElement, ride, rotation))
{
imageId = SPR_FENCE_ROPE_NW | colourFlags;
PaintAddImageAsChild(session, imageId, 0, 0, 32, 1, 7, height, 0, 2, height + 2);
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 32, 1, 7 }, { 0, 2, height + 2 });
}
if (edges & EDGE_NE && track_paint_util_has_fence(EDGE_NE, session.MapPosition, trackElement, ride, rotation))
{
imageId = SPR_FENCE_ROPE_NE | colourFlags;
PaintAddImageAsChild(session, imageId, 0, 0, 1, 32, 7, height, 2, 0, height + 2);
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 1, 32, 7 }, { 2, 0, height + 2 });
}
if (edges & EDGE_SE && track_paint_util_has_fence(EDGE_SE, session.MapPosition, trackElement, ride, rotation))
{

View File

@ -384,7 +384,7 @@ static void paint_ghost_train_station(
PaintAddImageAsParentRotated(session, direction, imageId, { 0, 0, height - 2 }, { 32, 28, 3 }, { 0, 2, height });
imageId = ghost_train_track_pieces_flat[direction] | session.TrackColours[SCHEME_TRACK];
PaintAddImageAsChildRotated(session, direction, imageId, 0, 0, 32, 20, 3, height, 0, 0, height);
PaintAddImageAsChildRotated(session, direction, imageId, { 0, 0, height }, { 32, 20, 3 }, { 0, 0, height });
paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT);

View File

@ -757,7 +757,7 @@ static void paint_mini_golf_track_left_quarter_turn_1_tile(
break;
imageId = SPR_MINI_GOLF_QUARTER_TURN_1_TILE_FENCE_BACK_SW_NW | session.TrackColours[SCHEME_MISC];
PaintAddImageAsChild(session, imageId, 0, 0, 26, 24, 1, height, 6, 2, height);
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 26, 24, 1 }, { 6, 2, height });
break;
@ -766,7 +766,7 @@ static void paint_mini_golf_track_left_quarter_turn_1_tile(
break;
imageId = SPR_MINI_GOLF_QUARTER_TURN_1_TILE_FENCE_BACK_NW_NE | session.TrackColours[SCHEME_MISC];
PaintAddImageAsChild(session, imageId, 0, 0, 26, 26, 1, height, 0, 0, height);
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 26, 26, 1 }, { 0, 0, height });
break;
case 2:
@ -775,7 +775,7 @@ static void paint_mini_golf_track_left_quarter_turn_1_tile(
break;
imageId = SPR_MINI_GOLF_QUARTER_TURN_1_TILE_FENCE_BACK_NE_SE | session.TrackColours[SCHEME_MISC];
PaintAddImageAsChild(session, imageId, 0, 0, 24, 26, 1, height, 2, 6, height);
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 24, 26, 1 }, { 2, 6, height });
break;
case 3:
@ -785,7 +785,7 @@ static void paint_mini_golf_track_left_quarter_turn_1_tile(
break;
imageId = SPR_MINI_GOLF_QUARTER_TURN_1_TILE_FENCE_BACK_SE_SW | session.TrackColours[SCHEME_MISC];
PaintAddImageAsChild(session, imageId, 0, 0, 24, 24, 1, height, 6, 6, height);
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 24, 24, 1 }, { 6, 6, height });
break;
}
@ -864,7 +864,7 @@ static void paint_mini_golf_hole_ab(
imageId = sprites[direction][trackSequence][0] | session.TrackColours[SCHEME_TRACK];
PaintAddImageAsChild(
session, imageId, 0, 0, boundBox.x, boundBox.y, 1, height, boundBoxOffset.x, boundBoxOffset.y, height);
session, imageId, { 0, 0, height }, { boundBox.x, boundBox.y, 1 }, { boundBoxOffset.x, boundBoxOffset.y, height });
}
else
{
@ -951,7 +951,7 @@ static void paint_mini_golf_hole_c(
imageId = mini_golf_track_sprites_hole_c[direction][trackSequence][0] | session.TrackColours[SCHEME_TRACK];
PaintAddImageAsChild(
session, imageId, 0, 0, boundBox.x, boundBox.y, 1, height, boundBoxOffset.x, boundBoxOffset.y, height);
session, imageId, { 0, 0, height }, { boundBox.x, boundBox.y, 1 }, { boundBoxOffset.x, boundBoxOffset.y, height });
}
else
{
@ -1044,7 +1044,7 @@ static void paint_mini_golf_hole_d(
imageId = mini_golf_track_sprites_hole_d[direction][trackSequence][0] | session.TrackColours[SCHEME_TRACK];
PaintAddImageAsChild(
session, imageId, 0, 0, boundBox.x, boundBox.y, 1, height, boundBoxOffset.x, boundBoxOffset.y, height);
session, imageId, { 0, 0, height }, { boundBox.x, boundBox.y, 1 }, { boundBoxOffset.x, boundBoxOffset.y, height });
}
else
{
@ -1137,7 +1137,7 @@ static void paint_mini_golf_hole_e(
imageId = mini_golf_track_sprites_hole_e[direction][trackSequence][0] | session.TrackColours[SCHEME_TRACK];
PaintAddImageAsChild(
session, imageId, 0, 0, boundBox.x, boundBox.y, 1, height, boundBoxOffset.x, boundBoxOffset.y, height);
session, imageId, { 0, 0, height }, { boundBox.x, boundBox.y, 1 }, { boundBoxOffset.x, boundBoxOffset.y, height });
}
else
{

View File

@ -29,7 +29,7 @@ static void paint_mini_helicopters_track_station(
PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { 32, 28, 1 }, { 0, 2, height });
imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_NE_SW | session.TrackColours[SCHEME_TRACK];
PaintAddImageAsChild(session, imageId, 0, 0, 32, 20, 1, height, 0, 0, height);
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 32, 20, 1 }, { 0, 0, height });
metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]);
metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]);
@ -41,7 +41,7 @@ static void paint_mini_helicopters_track_station(
PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { 28, 32, 1 }, { 2, 0, height });
imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_SE_NW | session.TrackColours[SCHEME_TRACK];
PaintAddImageAsChild(session, imageId, 0, 0, 20, 32, 1, height, 0, 0, height);
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 20, 32, 1 }, { 0, 0, height });
metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]);
metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]);

View File

@ -216,7 +216,7 @@ static void paint_monorail_cycles_station(
PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { 32, 28, 1 }, { 0, 2, height });
imageId = SPR_MONORAIL_CYCLES_FLAT_SW_NE | session.TrackColours[SCHEME_TRACK];
PaintAddImageAsChild(session, imageId, 0, 0, 32, 20, 1, height, 0, 0, height);
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 32, 20, 1 }, { 0, 0, height });
metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]);
metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]);
@ -228,7 +228,7 @@ static void paint_monorail_cycles_station(
PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { 28, 32, 1 }, { 2, 0, height });
imageId = SPR_MONORAIL_CYCLES_FLAT_NW_SE | session.TrackColours[SCHEME_TRACK];
PaintAddImageAsChild(session, imageId, 0, 0, 20, 32, 1, height, 0, 0, height);
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 20, 32, 1 }, { 0, 0, height });
metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]);
metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]);

View File

@ -174,7 +174,7 @@ static void paint_observation_tower_section(
if (trackElement.IsLastForTile() || trackElement.GetClearanceZ() != nextTileElement->GetBaseZ())
{
imageId = SPR_OBSERVATION_TOWER_SEGMENT_TOP | session.TrackColours[SCHEME_TRACK];
PaintAddImageAsChild(session, imageId, 0, 0, 2, 2, 30, height, 8, 8, height);
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 2, 2, 30 }, { 8, 8, height });
}
paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0);

View File

@ -77,7 +77,7 @@ static void paint_space_rings_structure(
{
imageColourFlags = SPRITE_ID_PALETTE_COLOUR_2(rider->TshirtColour, rider->TrousersColour);
imageId = ((baseImageId & 0x7FFFF) + 352 + frameNum) | imageColourFlags;
PaintAddImageAsChild(session, imageId, 0, 0, 20, 20, 23, height, -10, -10, height);
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 20, 20, 23 }, { -10, -10, height });
}
}
}

View File

@ -172,9 +172,7 @@ static void spiral_slide_paint_tile_front(
image_id = (offset + slide_progress) | (ride.slide_peep_t_shirt_colour << 19) | (1 << 29);
PaintAddImageAsChild(
session, image_id, 16, 16, boundingBox.x, boundingBox.y, boundingBox.z, height, boundingBoxOffset.x,
boundingBoxOffset.y, boundingBoxOffset.z);
PaintAddImageAsChild(session, image_id, { 16, 16, height }, boundingBox, boundingBoxOffset);
}
}
}

View File

@ -59,24 +59,24 @@ void vehicle_visual_launched_freefall(
auto directionOffset = imageDirection / 8;
image_id = (baseImage_id + (((directionOffset + 0) & 3) * 3))
| SPRITE_ID_PALETTE_COLOUR_2(vehicle->peep_tshirt_colours[0], vehicle->peep_tshirt_colours[1]);
PaintAddImageAsChild(session, image_id, 0, 0, 16, 16, 41, z, -5, -5, z + 1);
PaintAddImageAsChild(session, image_id, { 0, 0, z }, { 16, 16, 41 }, { -5, -5, z + 1 });
if (vehicle->num_peeps > 2)
{
image_id = (baseImage_id + (((directionOffset + 1) & 3) * 3))
| SPRITE_ID_PALETTE_COLOUR_2(vehicle->peep_tshirt_colours[2], vehicle->peep_tshirt_colours[3]);
PaintAddImageAsChild(session, image_id, 0, 0, 16, 16, 41, z, -5, -5, z + 1);
PaintAddImageAsChild(session, image_id, { 0, 0, z }, { 16, 16, 41 }, { -5, -5, z + 1 });
}
if (vehicle->num_peeps > 4)
{
image_id = (baseImage_id + (((directionOffset + 2) & 3) * 3))
| SPRITE_ID_PALETTE_COLOUR_2(vehicle->peep_tshirt_colours[4], vehicle->peep_tshirt_colours[5]);
PaintAddImageAsChild(session, image_id, 0, 0, 16, 16, 41, z, -5, -5, z + 1);
PaintAddImageAsChild(session, image_id, { 0, 0, z }, { 16, 16, 41 }, { -5, -5, z + 1 });
}
if (vehicle->num_peeps > 6)
{
image_id = (baseImage_id + (((directionOffset + 3) & 3) * 3))
| SPRITE_ID_PALETTE_COLOUR_2(vehicle->peep_tshirt_colours[6], vehicle->peep_tshirt_colours[7]);
PaintAddImageAsChild(session, image_id, 0, 0, 16, 16, 41, z, -5, -5, z + 1);
PaintAddImageAsChild(session, image_id, { 0, 0, z }, { 16, 16, 41 }, { -5, -5, z + 1 });
}
}
@ -174,7 +174,7 @@ static void paint_launched_freefall_tower_section(
if (trackElement.IsLastForTile() || trackElement.GetClearanceZ() != nextTileElement->GetBaseZ())
{
imageId = SPR_LAUNCHED_FREEFALL_TOWER_SEGMENT_TOP | session.TrackColours[SCHEME_TRACK];
PaintAddImageAsChild(session, imageId, 0, 0, 2, 2, 30, height, 8, 8, height);
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 2, 2, 30 }, { 8, 8, height });
}
paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0);

View File

@ -86,7 +86,7 @@ void vehicle_visual_roto_drop(
baseImage_id += vehicle->restraints_position / 64;
}
image_id = baseImage_id | SPRITE_ID_PALETTE_COLOUR_1(riding_peep_sprites[i]);
PaintAddImageAsChild(session, image_id, 0, 0, 16, 16, 41, z, -5, -5, z + 1);
PaintAddImageAsChild(session, image_id, { 0, 0, z }, { 16, 16, 41 }, { -5, -5, z + 1 });
}
}
}
@ -192,7 +192,7 @@ static void paint_roto_drop_tower_section(
if (trackElement.IsLastForTile() || trackElement.GetClearanceZ() != nextTileElement->GetBaseZ())
{
imageId = SPR_ROTO_DROP_TOWER_SEGMENT_TOP | session.TrackColours[SCHEME_TRACK];
PaintAddImageAsChild(session, imageId, 0, 0, 2, 2, 30, height, 8, 8, height);
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 2, 2, 30 }, { 8, 8, height });
}
paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0);

View File

@ -173,11 +173,11 @@ static void PaintSwingingInverterShip(
break;
case 2:
imageId = SPR_STATION_PLATFORM_SW_NE | session.TrackColours[SCHEME_TRACK];
PaintAddImageAsChild(session, imageId, 0, 0, 32, 8, 1, height + 9, -2, 0, height);
PaintAddImageAsChild(session, imageId, { 0, 0, height + 9 }, { 32, 8, 1 }, { -2, 0, height });
break;
case 3:
imageId = SPR_STATION_PLATFORM_NW_SE | session.TrackColours[SCHEME_TRACK];
PaintAddImageAsChild(session, imageId, 0, 0, 8, 32, 1, height + 9, 0, -2, height);
PaintAddImageAsChild(session, imageId, { 0, 0, height + 9 }, { 8, 32, 1 }, { 0, -2, height });
break;
}
}

View File

@ -219,7 +219,7 @@ static void PaintSwingingShip(
imageId = (hasFence ? SPR_STATION_PLATFORM_FENCED_NW_SE : SPR_STATION_PLATFORM_NW_SE)
| session.TrackColours[SCHEME_TRACK];
}
PaintAddImageAsChild(session, imageId, 0, 0, 8, 32, 1, height + 9, 0, -2, height + 9);
PaintAddImageAsChild(session, imageId, { 0, 0, height + 9 }, { 8, 32, 1 }, { 0, -2, height + 9 });
imageId = (relativeTrackSequence == 2 ? SPR_STATION_PLATFORM_BEGIN_NW_SE : SPR_STATION_PLATFORM_NW_SE)
| session.TrackColours[SCHEME_TRACK];
@ -266,7 +266,7 @@ static void PaintSwingingShip(
imageId = (hasFence ? SPR_STATION_PLATFORM_FENCED_SW_NE : SPR_STATION_PLATFORM_SW_NE)
| session.TrackColours[SCHEME_TRACK];
}
PaintAddImageAsChild(session, imageId, 0, 0, 32, 8, 1, height + 9, -2, 0, height + 9);
PaintAddImageAsChild(session, imageId, { 0, 0, height + 9 }, { 32, 8, 1 }, { -2, 0, height + 9 });
imageId = (relativeTrackSequence == 2 ? SPR_STATION_PLATFORM_BEGIN_SW_NE : SPR_STATION_PLATFORM_SW_NE)
| session.TrackColours[SCHEME_TRACK];

View File

@ -203,14 +203,14 @@ static void chairlift_paint_station_ne_sw(
if (hasFence)
{
imageId = SPR_FENCE_METAL_NW | session.TrackColours[SCHEME_TRACK];
PaintAddImageAsChild(session, imageId, 0, 0, 32, 1, 7, height, 0, 2, height + 2);
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 32, 1, 7 }, { 0, 2, height + 2 });
}
track_paint_util_draw_station_covers(session, EDGE_NW, hasFence, stationObj, height);
if ((direction == 2 && isStart) || (direction == 0 && isEnd))
{
imageId = SPR_FENCE_METAL_NE | session.TrackColours[SCHEME_TRACK];
PaintAddImageAsChild(session, imageId, 0, 0, 1, 28, 7, height, 2, 2, height + 4);
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 1, 28, 7 }, { 2, 2, height + 4 });
}
hasFence = track_paint_util_has_fence(EDGE_SE, pos, trackElement, ride, session.CurrentRotation);
@ -232,7 +232,7 @@ static void chairlift_paint_station_ne_sw(
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 4, 4, 26 }, { 14, 14, height + 4 });
imageId = SPR_CHAIRLIFT_STATION_END_CAP_NE | session.TrackColours[SCHEME_TRACK];
PaintAddImageAsChild(session, imageId, 0, 0, 4, 4, 26, height, 14, 14, height + 4);
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 4, 4, 26 }, { 14, 14, height + 4 });
drawFrontColumn = false;
}
@ -242,7 +242,7 @@ static void chairlift_paint_station_ne_sw(
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 4, 4, 26 }, { 14, 14, height + 4 });
imageId = SPR_CHAIRLIFT_STATION_END_CAP_SW | session.TrackColours[SCHEME_TRACK];
PaintAddImageAsChild(session, imageId, 0, 0, 4, 4, 26, height, 14, 14, height + 4);
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 4, 4, 26 }, { 14, 14, height + 4 });
drawBackColumn = false;
}
@ -293,14 +293,14 @@ static void chairlift_paint_station_se_nw(
if (hasFence)
{
imageId = SPR_FENCE_METAL_NE | session.TrackColours[SCHEME_TRACK];
PaintAddImageAsChild(session, imageId, 0, 0, 1, 32, 7, height, 2, 0, height + 2);
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 1, 32, 7 }, { 2, 0, height + 2 });
}
track_paint_util_draw_station_covers(session, EDGE_NE, hasFence, stationObj, height);
if ((direction == 1 && isStart) || (direction == 3 && isEnd))
{
imageId = SPR_FENCE_METAL_NW | session.TrackColours[SCHEME_TRACK];
PaintAddImageAsChild(session, imageId, 0, 0, 28, 1, 7, height, 2, 2, height + 4);
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 28, 1, 7 }, { 2, 2, height + 4 });
}
hasFence = track_paint_util_has_fence(EDGE_SW, pos, trackElement, ride, session.CurrentRotation);
@ -319,7 +319,7 @@ static void chairlift_paint_station_se_nw(
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 4, 4, 26 }, { 14, 14, height + 4 });
imageId = SPR_CHAIRLIFT_STATION_END_CAP_SE | session.TrackColours[SCHEME_TRACK];
PaintAddImageAsChild(session, imageId, 0, 0, 4, 4, 26, height, 14, 14, height + 4);
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 4, 4, 26 }, { 14, 14, height + 4 });
drawLeftColumn = false;
}
@ -332,7 +332,7 @@ static void chairlift_paint_station_se_nw(
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 4, 4, 26 }, { 14, 14, height + 4 });
imageId = SPR_CHAIRLIFT_STATION_END_CAP_NW | session.TrackColours[SCHEME_TRACK];
PaintAddImageAsChild(session, imageId, 0, 0, 4, 4, 26, height, 14, 14, height + 4);
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 4, 4, 26 }, { 14, 14, height + 4 });
drawRightColumn = false;
}

View File

@ -649,24 +649,24 @@ static void paint_miniature_railway_track_flat(
imageId = miniature_railway_track_pieces_flat[direction] | session.TrackColours[SCHEME_TRACK];
if (!paintAsGravel)
{
PaintAddImageAsChildRotated(session, direction, imageId, 0, 6, 32, 20, 2, height, 0, 6, height);
PaintAddImageAsChildRotated(session, direction, imageId, { 0, 6, height }, { 32, 20, 2 }, { 0, 6, height });
}
else
{
imageIdAlt = miniature_railway_track_to_gravel(imageId);
PaintAddImageAsChildRotated(session, direction, imageIdAlt, 0, 6, 32, 20, 2, height, 0, 6, height);
PaintAddImageAsChildRotated(session, direction, imageIdAlt, { 0, 6, height }, { 32, 20, 2 }, { 0, 6, height });
}
if (paintGrooved)
{
imageIdAlt = miniature_railway_track_to_grooved(imageId);
PaintAddImageAsChildRotated(session, direction, imageIdAlt, 0, 6, 32, 20, 2, height, 0, 6, height + 2);
PaintAddImageAsChildRotated(session, direction, imageIdAlt, { 0, 6, height }, { 32, 20, 2 }, { 0, 6, height + 2 });
imageIdAlt = miniature_railway_track_to_grooved_indent(
imageId, session.PathElementOnSameHeight, direction, session.CurrentRotation);
PaintAddImageAsChildRotated(
session, direction,
(imageIdAlt & 0x7FFFF) | IMAGE_TYPE_REMAP | IMAGE_TYPE_TRANSPARENT
| (EnumValue(FilterPaletteID::PaletteDarken2) << 19),
0, 6, 32, 20, 2, height, 0, 6, height + 2);
{ 0, 6, height }, { 32, 20, 2 }, { 0, 6, height + 2 });
}
}
else
@ -714,7 +714,7 @@ static void paint_miniature_railway_station(
PaintAddImageAsParentRotated(session, direction, imageId, { 0, 0, height - 2 }, { 32, 28, 2 }, { 0, 2, height });
imageId = miniature_railway_track_pieces_flat_station[direction] | session.TrackColours[SCHEME_TRACK];
PaintAddImageAsChildRotated(session, direction, imageId, 0, 6, 32, 20, 2, height, 0, 0, height);
PaintAddImageAsChildRotated(session, direction, imageId, { 0, 6, height }, { 32, 20, 2 }, { 0, 0, height });
paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT);
@ -1133,8 +1133,8 @@ static void paint_miniature_railway_track_s_bend_left(
if (!isSupported)
{
PaintAddImageAsParentRotated(
session, direction, imageId, { static_cast<int8_t>(offset.x), static_cast<int8_t>(offset.y), height },
{ bounds.x, bounds.y, 2 }, { offset.x, offset.y, height });
session, direction, imageId, { offset.x, offset.y, height }, { bounds.x, bounds.y, 2 },
{ offset.x, offset.y, height });
}
else
{
@ -1145,8 +1145,8 @@ static void paint_miniature_railway_track_s_bend_left(
imageId = miniature_railway_track_pieces_s_bend_left[direction & 1][trackSequence] | session.TrackColours[SCHEME_TRACK];
PaintAddImageAsChildRotated(
session, direction, imageId, static_cast<int8_t>(offset.x), static_cast<int8_t>(offset.y), bounds.x, bounds.y, 2,
height, offset.x, offset.y, height);
session, direction, imageId, { offset.x, offset.y, height }, { bounds.x, bounds.y, 2 },
{ offset.x, offset.y, height });
}
if (direction == 0 || direction == 2)
{
@ -1240,8 +1240,8 @@ static void paint_miniature_railway_track_s_bend_right(
if (!isSupported)
{
PaintAddImageAsParentRotated(
session, direction, imageId, { static_cast<int8_t>(offset.x), static_cast<int8_t>(offset.y), height },
{ bounds.x, bounds.y, 2 }, { offset.x, offset.y, height });
session, direction, imageId, { offset.x, offset.y, height }, { bounds.x, bounds.y, 2 },
{ offset.x, offset.y, height });
}
else
{
@ -1253,8 +1253,8 @@ static void paint_miniature_railway_track_s_bend_right(
imageId = miniature_railway_track_pieces_s_bend_right[direction & 1][trackSequence]
| session.TrackColours[SCHEME_TRACK];
PaintAddImageAsChildRotated(
session, direction, imageId, static_cast<int8_t>(offset.x), static_cast<int8_t>(offset.y), bounds.x, bounds.y, 2,
height, offset.x, offset.y, height);
session, direction, imageId, { offset.x, offset.y, height }, { bounds.x, bounds.y, 2 },
{ offset.x, offset.y, height });
}
if (direction == 0 || direction == 2)

View File

@ -496,11 +496,11 @@ static void paint_monorail_station(
imageId = monorail_track_pieces_flat[direction] | session.TrackColours[SCHEME_TRACK];
if (direction == 0 || direction == 2)
{
PaintAddImageAsChild(session, imageId, 0, 6, 32, 20, 2, height, 0, 0, height);
PaintAddImageAsChild(session, imageId, { 0, 6, height }, { 32, 20, 2 }, { 0, 0, height });
}
else
{
PaintAddImageAsChild(session, imageId, 6, 0, 20, 32, 2, height, 0, 0, height);
PaintAddImageAsChild(session, imageId, { 6, 0, height }, { 20, 32, 2 }, { 0, 0, height });
}
if (direction == 0 || direction == 2)

View File

@ -70,8 +70,8 @@ static void suspended_monorail_track_station(
session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_TRACK], { 0, 0, height + 32 }, { 32, 20, 3 },
{ 0, 6, height + 32 });
PaintAddImageAsChildRotated(
session, direction, imageIds[direction][2] | session.TrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 3, height + 32, 0, 6,
height + 32);
session, direction, imageIds[direction][2] | session.TrackColours[SCHEME_SUPPORTS], { 0, 6, height + 32 },
{ 32, 20, 3 }, { 0, 6, height + 32 });
track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 3);
track_paint_util_draw_station_inverted(session, ride, direction, height, trackElement, STATION_VARIANT_TALL);
paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_INVERTED_9);