Pass paint session to track_paint helpers

This commit is contained in:
Ted John 2017-09-03 01:42:08 +01:00
parent dce007feaa
commit 972a3bf111
66 changed files with 350 additions and 350 deletions

View File

@ -214,7 +214,7 @@ static void air_powered_vertical_rc_track_station(paint_session * session, uint8
wooden_a_supports_paint_setup(session, direction & 1, 0, height, gTrackColours[SCHEME_SUPPORTS], NULL);
rct_ride * ride = get_ride(rideIndex);
track_paint_util_draw_station_platform(ride, direction, height, 5, mapElement);
track_paint_util_draw_station_platform(session, ride, direction, height, 5, mapElement);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
@ -255,9 +255,9 @@ static void air_powered_vertical_rc_track_right_quarter_turn_5(paint_session * s
}
};
track_paint_util_right_quarter_turn_5_tiles_paint_3(height, direction, get_current_rotation(), trackSequence, gTrackColours[SCHEME_TRACK], imageIds);
track_paint_util_right_quarter_turn_5_tiles_paint_3(session, height, direction, get_current_rotation(), trackSequence, gTrackColours[SCHEME_TRACK], imageIds);
track_paint_util_right_quarter_turn_5_tiles_wooden_supports(session, height, direction, trackSequence);
track_paint_util_right_quarter_turn_5_tiles_tunnel(height, direction, trackSequence, TUNNEL_6);
track_paint_util_right_quarter_turn_5_tiles_tunnel(session, height, direction, trackSequence, TUNNEL_6);
switch (trackSequence) {
case 0: paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0); break;
@ -374,7 +374,7 @@ static void air_powered_vertical_rc_track_banked_right_quarter_turn_5(paint_sess
}
};
track_paint_util_right_quarter_turn_5_tiles_paint_2(height, direction, get_current_rotation(), trackSequence, gTrackColours[SCHEME_TRACK], imageIds);
track_paint_util_right_quarter_turn_5_tiles_paint_2(session, height, direction, get_current_rotation(), trackSequence, gTrackColours[SCHEME_TRACK], imageIds);
if (direction == 1 && trackSequence == 6) {
uint32 imageId = SPR_AIR_POWERED_VERTICAL_RC_BANKED_QUARTER_TURN_5_FRONT_NW_SW_PART_4 | gTrackColours[SCHEME_TRACK];
@ -385,7 +385,7 @@ static void air_powered_vertical_rc_track_banked_right_quarter_turn_5(paint_sess
}
track_paint_util_right_quarter_turn_5_tiles_wooden_supports(session, height, direction, trackSequence);
track_paint_util_right_quarter_turn_5_tiles_tunnel(height, direction, trackSequence, TUNNEL_6);
track_paint_util_right_quarter_turn_5_tiles_tunnel(session, height, direction, trackSequence, TUNNEL_6);
switch (trackSequence) {
case 0: paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0); break;

View File

@ -79,7 +79,7 @@ static void bobsleigh_rc_track_station(paint_session * session, uint8 rideIndex,
sub_98197C_rotated(direction, imageIds[direction][0] | gTrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, height + 3);
sub_98196C_rotated(direction, imageIds[direction][1] | gTrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height);
track_paint_util_draw_station_metal_supports_2(session, direction, height, gTrackColours[SCHEME_SUPPORTS], 0);
track_paint_util_draw_station(rideIndex, trackSequence, direction, height, mapElement);
track_paint_util_draw_station(session, rideIndex, trackSequence, direction, height, mapElement);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 32, 0x20);
@ -2280,7 +2280,7 @@ static void bobsleigh_rc_track_on_ride_photo(paint_session * session, uint8 ride
break;
}
track_paint_util_onride_photo_paint(direction, height + 3, mapElement);
track_paint_util_onride_photo_paint(session, direction, height + 3, mapElement);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 48, 0x20);

View File

@ -85,7 +85,7 @@ void bolliger_mabillard_track_station(paint_session * session, uint8 rideIndex,
track_paint_util_draw_station_metal_supports_2(session, direction, height, gTrackColours[SCHEME_SUPPORTS], supportType);
rct_ride * ride = get_ride(rideIndex);
track_paint_util_draw_station_platform(ride, direction, height, 9, mapElement);
track_paint_util_draw_station_platform(session, ride, direction, height, 9, mapElement);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
@ -1721,7 +1721,7 @@ void bolliger_mabillard_track_right_vertical_loop(paint_session * session, uint8
break;
}
track_paint_util_right_vertical_loop_segments(direction, trackSequence);
track_paint_util_right_vertical_loop_segments(session, direction, trackSequence);
}
void bolliger_mabillard_track_left_quarter_turn_3(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement, sint32 supportType)
@ -2849,7 +2849,7 @@ void bolliger_mabillard_track_left_quarter_turn_1_60_deg_up(paint_session * sess
sub_98197C_rotated(direction, gTrackColours[SCHEME_TRACK] | 17304, 0, 0, 28, 28, 1, height, 2, 2, height + 99);
break;
}
track_paint_util_left_quarter_turn_1_tile_tunnel(direction, height, -8, TUNNEL_7, +56, TUNNEL_8);
track_paint_util_left_quarter_turn_1_tile_tunnel(session, direction, height, -8, TUNNEL_7, +56, TUNNEL_8);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 104, 0x20);
}
@ -2874,7 +2874,7 @@ void bolliger_mabillard_track_right_quarter_turn_1_60_deg_up(paint_session * ses
sub_98197C_rotated(direction, gTrackColours[SCHEME_TRACK] | 17299, 0, 0, 28, 28, 1, height, 2, 2, height + 99);
break;
}
track_paint_util_right_quarter_turn_1_tile_tunnel(direction, height, -8, TUNNEL_7, +56, TUNNEL_8);
track_paint_util_right_quarter_turn_1_tile_tunnel(session, direction, height, -8, TUNNEL_7, +56, TUNNEL_8);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 104, 0x20);
}
@ -2993,7 +2993,7 @@ void bolliger_mabillard_track_on_ride_photo(paint_session * session, uint8 rideI
sub_98197C_rotated(direction, gTrackColours[SCHEME_TRACK] | 17147, 0, 0, 32, 20, 0, height, 0, 6, height + 3);
break;
}
track_paint_util_onride_photo_paint(direction, height + 3, mapElement);
track_paint_util_onride_photo_paint(session, direction, height + 3, mapElement);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 48, 0x20);

View File

@ -76,7 +76,7 @@ static void compact_inverted_rc_track_station(paint_session * session, uint8 rid
sub_98197C_rotated(direction, imageIds[direction][1] | gTrackColours[SCHEME_TRACK], 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29);
sub_98199C_rotated(direction, imageIds[direction][2] | gTrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 3, height + 29, 0, 6, height + 29);
track_paint_util_draw_station_metal_supports_2(session, direction, height, gTrackColours[SCHEME_SUPPORTS], 11);
track_paint_util_draw_station_inverted(rideIndex, trackSequence, direction, height, mapElement, STATION_VARIANT_TALL);
track_paint_util_draw_station_inverted(session, rideIndex, trackSequence, direction, height, mapElement, STATION_VARIANT_TALL);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_9);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 48, 0x20);
@ -2855,7 +2855,7 @@ static void compact_inverted_rc_track_left_quarter_turn_1_60_deg_up(paint_sessio
sub_98197C_rotated(direction, gTrackColours[SCHEME_TRACK] | 26905, 0, 0, 28, 28, 1, height + 5, 2, 2, height + 104);
break;
}
track_paint_util_left_quarter_turn_1_tile_tunnel(direction, height, -8, TUNNEL_4, +56, TUNNEL_5);
track_paint_util_left_quarter_turn_1_tile_tunnel(session, direction, height, -8, TUNNEL_4, +56, TUNNEL_5);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 104, 0x20);
}
@ -2881,7 +2881,7 @@ static void compact_inverted_rc_track_right_quarter_turn_1_60_deg_up(paint_sessi
sub_98197C_rotated(direction, gTrackColours[SCHEME_TRACK] | 26900, 0, 0, 28, 28, 1, height + 5, 2, 2, height + 104);
break;
}
track_paint_util_right_quarter_turn_1_tile_tunnel(direction, height, -8, TUNNEL_4, +56, TUNNEL_5);
track_paint_util_right_quarter_turn_1_tile_tunnel(session, direction, height, -8, TUNNEL_4, +56, TUNNEL_5);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 104, 0x20);
}
@ -3430,7 +3430,7 @@ static void compact_inverted_rc_track_on_ride_photo(paint_session * session, uin
sub_98197C_rotated(direction, gTrackColours[SCHEME_TRACK] | 26556, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29);
break;
}
track_paint_util_onride_photo_paint(direction, height + 3, mapElement);
track_paint_util_onride_photo_paint(session, direction, height + 3, mapElement);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_3);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 64, 0x20);

View File

@ -84,7 +84,7 @@ static void corkscrew_rc_track_station(paint_session * session, uint8 rideIndex,
}
sub_98196C_rotated(direction, imageIds[direction][2] | gTrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height);
track_paint_util_draw_station_metal_supports_2(session, direction, height, gTrackColours[SCHEME_SUPPORTS], 0);
track_paint_util_draw_station_2(rideIndex, trackSequence, direction, height, mapElement, 9, 11);
track_paint_util_draw_station_2(session, rideIndex, trackSequence, direction, height, mapElement, 9, 11);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 32, 0x20);
@ -1754,7 +1754,7 @@ static void corkscrew_rc_track_right_vertical_loop(paint_session * session, uint
break;
}
track_paint_util_right_vertical_loop_segments(direction, trackSequence);
track_paint_util_right_vertical_loop_segments(session, direction, trackSequence);
}
/** rct2: 0x008A7D98 */
@ -3154,7 +3154,7 @@ static void corkscrew_rc_track_left_quarter_turn_1_60_deg_up(paint_session * ses
sub_98197C_rotated(direction, gTrackColours[SCHEME_TRACK] | 16558, 0, 0, 28, 28, 1, height, 2, 2, height + 99);
break;
}
track_paint_util_left_quarter_turn_1_tile_tunnel(direction, height, -8, TUNNEL_1, +56, TUNNEL_2);
track_paint_util_left_quarter_turn_1_tile_tunnel(session, direction, height, -8, TUNNEL_1, +56, TUNNEL_2);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 104, 0x20);
}
@ -3180,7 +3180,7 @@ static void corkscrew_rc_track_right_quarter_turn_1_60_deg_up(paint_session * se
sub_98197C_rotated(direction, gTrackColours[SCHEME_TRACK] | 16553, 0, 0, 28, 28, 1, height, 2, 2, height + 99);
break;
}
track_paint_util_right_quarter_turn_1_tile_tunnel(direction, height, -8, TUNNEL_1, +56, TUNNEL_2);
track_paint_util_right_quarter_turn_1_tile_tunnel(session, direction, height, -8, TUNNEL_1, +56, TUNNEL_2);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 104, 0x20);
}
@ -3247,7 +3247,7 @@ static void corkscrew_rc_track_on_ride_photo(paint_session * session, uint8 ride
sub_98197C_rotated(direction, gTrackColours[SCHEME_TRACK] | 16225, 0, 0, 32, 20, 0, height, 0, 6, height + 3);
break;
}
track_paint_util_onride_photo_paint(direction, height + 3, mapElement);
track_paint_util_onride_photo_paint(session, direction, height + 3, mapElement);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_0);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 48, 0x20);

View File

@ -115,7 +115,7 @@ static void flying_rc_track_station(paint_session * session, uint8 rideIndex, ui
sub_98197C_rotated(direction, imageIds[direction][1] | gTrackColours[SCHEME_TRACK], 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24);
sub_98199C_rotated(direction, imageIds[direction][2] | gTrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 1, height + 24, 0, 6, height + 24);
track_paint_util_draw_station_metal_supports_2(session, direction, height, gTrackColours[SCHEME_SUPPORTS], 11);
track_paint_util_draw_station_inverted(rideIndex, trackSequence, direction, height, mapElement, STATION_VARIANT_1);
track_paint_util_draw_station_inverted(session, rideIndex, trackSequence, direction, height, mapElement, STATION_VARIANT_1);
} else {
static const uint32 imageIds[4][3] = {
{ 17154, 17150, SPR_STATION_BASE_A_SW_NE },
@ -131,7 +131,7 @@ static void flying_rc_track_station(paint_session * session, uint8 rideIndex, ui
}
sub_98196C_rotated(direction, imageIds[direction][2] | gTrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height);
track_paint_util_draw_station_metal_supports_2(session, direction, height, gTrackColours[SCHEME_SUPPORTS], 11);
track_paint_util_draw_station_2(rideIndex, trackSequence, direction, height, mapElement, 9, 11);
track_paint_util_draw_station_2(session, rideIndex, trackSequence, direction, height, mapElement, 9, 11);
}
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
@ -4786,7 +4786,7 @@ static void flying_rc_track_left_quarter_turn_1_60_deg_up(paint_session * sessio
}
}
track_paint_util_left_quarter_turn_1_tile_tunnel(direction, height, -8, TUNNEL_7, +56, TUNNEL_8);
track_paint_util_left_quarter_turn_1_tile_tunnel(session, direction, height, -8, TUNNEL_7, +56, TUNNEL_8);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 104, 0x20);
}
@ -4833,7 +4833,7 @@ static void flying_rc_track_right_quarter_turn_1_60_deg_up(paint_session * sessi
break;
}
}
track_paint_util_right_quarter_turn_1_tile_tunnel(direction, height, -8, TUNNEL_7, +56, TUNNEL_8);
track_paint_util_right_quarter_turn_1_tile_tunnel(session, direction, height, -8, TUNNEL_7, +56, TUNNEL_8);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 104, 0x20);
}
@ -6016,7 +6016,7 @@ static void flying_rc_track_on_ride_photo(paint_session * session, uint8 rideInd
sub_98197C_rotated(direction, gTrackColours[SCHEME_TRACK] | 17147, 0, 0, 32, 20, 0, height, 0, 6, height + 3);
break;
}
track_paint_util_onride_photo_paint(direction, height + 3, mapElement);
track_paint_util_onride_photo_paint(session, direction, height + 3, mapElement);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 48, 0x20);
@ -6047,7 +6047,7 @@ static void flying_rc_track_on_ride_photo(paint_session * session, uint8 rideInd
sub_98197C_rotated(direction, gTrackColours[SCHEME_TRACK] | 27130, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24);
break;
}
track_paint_util_onride_photo_paint(direction, height + 3, mapElement);
track_paint_util_onride_photo_paint(session, direction, height + 3, mapElement);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 64, 0x20);

View File

@ -97,7 +97,7 @@ static void giga_rc_track_station(paint_session * session, uint8 rideIndex, uint
}
sub_98196C_rotated(direction, imageIds[direction][2] | gTrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height);
track_paint_util_draw_station_metal_supports_2(session, direction, height, gTrackColours[SCHEME_SUPPORTS], 0);
track_paint_util_draw_station_2(rideIndex, trackSequence, direction, height, mapElement, 9, 11);
track_paint_util_draw_station_2(session, rideIndex, trackSequence, direction, height, mapElement, 9, 11);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 32, 0x20);
@ -2610,7 +2610,7 @@ static void giga_rc_track_left_quarter_turn_1_60_deg_up(paint_session * session,
sub_98197C_rotated(direction, gTrackColours[SCHEME_TRACK] | 18234, 0, 0, 28, 28, 1, height, 2, 2, height + 99);
break;
}
track_paint_util_left_quarter_turn_1_tile_tunnel(direction, height, -8, TUNNEL_7, +56, TUNNEL_8);
track_paint_util_left_quarter_turn_1_tile_tunnel(session, direction, height, -8, TUNNEL_7, +56, TUNNEL_8);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 104, 0x20);
}
@ -2636,7 +2636,7 @@ static void giga_rc_track_right_quarter_turn_1_60_deg_up(paint_session * session
sub_98197C_rotated(direction, gTrackColours[SCHEME_TRACK] | 18229, 0, 0, 28, 28, 1, height, 2, 2, height + 99);
break;
}
track_paint_util_right_quarter_turn_1_tile_tunnel(direction, height, -8, TUNNEL_7, +56, TUNNEL_8);
track_paint_util_right_quarter_turn_1_tile_tunnel(session, direction, height, -8, TUNNEL_7, +56, TUNNEL_8);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 104, 0x20);
}
@ -2763,7 +2763,7 @@ static void giga_rc_track_on_ride_photo(paint_session * session, uint8 rideIndex
sub_98197C_rotated(direction, gTrackColours[SCHEME_TRACK] | 18075, 0, 0, 32, 20, 0, height, 0, 6, height + 3);
break;
}
track_paint_util_onride_photo_paint(direction, height + 3, mapElement);
track_paint_util_onride_photo_paint(session, direction, height + 3, mapElement);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 48, 0x20);

View File

@ -85,7 +85,7 @@ static void heartline_twister_rc_track_station(paint_session * session, uint8 ri
sub_98197C_rotated(direction, imageIds[direction][0] | gTrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, height + 3);
sub_98196C_rotated(direction, imageIds[direction][1] | gTrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height);
track_paint_util_draw_station_metal_supports_2(session, direction, height, gTrackColours[SCHEME_SUPPORTS], 0);
track_paint_util_draw_station(rideIndex, trackSequence, direction, height, mapElement);
track_paint_util_draw_station(session, rideIndex, trackSequence, direction, height, mapElement);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 32, 0x20);

View File

@ -80,7 +80,7 @@ static void inverted_hairpin_rc_track_station(paint_session * session, uint8 rid
sub_98197C_rotated(direction, imageIds[direction][1] | gTrackColours[SCHEME_TRACK], 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24);
sub_98199C_rotated(direction, imageIds[direction][2] | gTrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 1, height + 24, 0, 6, height + 24);
track_paint_util_draw_station_metal_supports_2(session, direction, height, gTrackColours[SCHEME_SUPPORTS], 11);
track_paint_util_draw_station_inverted(rideIndex, trackSequence, direction, height, mapElement, STATION_VARIANT_1);
track_paint_util_draw_station_inverted(session, rideIndex, trackSequence, direction, height, mapElement, STATION_VARIANT_1);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 32, 0x20);

View File

@ -63,7 +63,7 @@ static void inverted_impulse_rc_track_station(paint_session * session, uint8 rid
sub_98197C_rotated(direction, imageIds[direction][1] | gTrackColours[SCHEME_TRACK], 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29);
sub_98199C_rotated(direction, imageIds[direction][2] | gTrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 3, height + 29, 0, 6, height + 29);
track_paint_util_draw_station_metal_supports_2(session, direction, height, gTrackColours[SCHEME_SUPPORTS], 11);
track_paint_util_draw_station_inverted(rideIndex, trackSequence, direction, height, mapElement, STATION_VARIANT_TALL);
track_paint_util_draw_station_inverted(session, rideIndex, trackSequence, direction, height, mapElement, STATION_VARIANT_TALL);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_9);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 48, 0x20);

View File

@ -76,7 +76,7 @@ static void inverted_rc_track_station(paint_session * session, uint8 rideIndex,
sub_98197C_rotated(direction, imageIds[direction][1] | gTrackColours[SCHEME_TRACK], 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29);
sub_98199C_rotated(direction, imageIds[direction][2] | gTrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 3, height + 29, 0, 6, height + 29);
track_paint_util_draw_station_metal_supports_2(session, direction, height, gTrackColours[SCHEME_SUPPORTS], 3);
track_paint_util_draw_station_inverted(rideIndex, trackSequence, direction, height, mapElement, STATION_VARIANT_TALL);
track_paint_util_draw_station_inverted(session, rideIndex, trackSequence, direction, height, mapElement, STATION_VARIANT_TALL);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_9);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 48, 0x20);
@ -2800,7 +2800,7 @@ static void inverted_rc_track_left_quarter_turn_1_60_deg_up(paint_session * sess
sub_98197C_rotated(direction, gTrackColours[SCHEME_TRACK] | 27347, 0, 0, 28, 28, 1, height, 2, 2, height + 99);
break;
}
track_paint_util_left_quarter_turn_1_tile_tunnel(direction, height, -8, TUNNEL_4, +56, TUNNEL_5);
track_paint_util_left_quarter_turn_1_tile_tunnel(session, direction, height, -8, TUNNEL_4, +56, TUNNEL_5);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 104, 0x20);
}
@ -2826,7 +2826,7 @@ static void inverted_rc_track_right_quarter_turn_1_60_deg_up(paint_session * ses
sub_98197C_rotated(direction, gTrackColours[SCHEME_TRACK] | 27342, 0, 0, 28, 28, 1, height, 2, 2, height + 99);
break;
}
track_paint_util_right_quarter_turn_1_tile_tunnel(direction, height, -8, TUNNEL_4, +56, TUNNEL_5);
track_paint_util_right_quarter_turn_1_tile_tunnel(session, direction, height, -8, TUNNEL_4, +56, TUNNEL_5);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 104, 0x20);
}
@ -3463,7 +3463,7 @@ static void inverted_rc_track_on_ride_photo(paint_session * session, uint8 rideI
sub_98197C_rotated(direction, gTrackColours[SCHEME_TRACK] | 27130, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29);
break;
}
track_paint_util_onride_photo_paint(direction, height + 3, mapElement);
track_paint_util_onride_photo_paint(session, direction, height + 3, mapElement);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_3);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 64, 0x20);

View File

@ -1926,7 +1926,7 @@ void junior_rc_paint_station(paint_session * session, uint8 rideIndex, uint8 tra
paint_util_push_tunnel_right(height, TUNNEL_6);
}
track_paint_util_draw_station(rideIndex, trackSequence, direction, height, mapElement);
track_paint_util_draw_station(session, rideIndex, trackSequence, direction, height, mapElement);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 32, 0x20);
@ -2012,7 +2012,7 @@ static const sint8 junior_rc_track_right_quarter_turn_5_tiles_support_height_off
};
static void junior_rc_right_quarter_turn_5_tiles_paint_setup(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement) {
track_paint_util_right_quarter_turn_5_tiles_paint(1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_flat_quarter_turn_5_tiles, defaultRightQuarterTurn5TilesOffsets, defaultRightQuarterTurn5TilesBoundLengths, defaultRightQuarterTurn5TilesBoundOffsets, get_current_rotation());
track_paint_util_right_quarter_turn_5_tiles_paint(session, 1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_flat_quarter_turn_5_tiles, defaultRightQuarterTurn5TilesOffsets, defaultRightQuarterTurn5TilesBoundLengths, defaultRightQuarterTurn5TilesBoundOffsets, get_current_rotation());
sint32 supportHeight = height + junior_rc_track_right_quarter_turn_5_tiles_support_height_offset[direction][trackSequence];
@ -2218,7 +2218,7 @@ static void junior_rc_banked_right_quarter_turn_5_tiles_paint_setup(paint_sessio
if (direction == 2 && (trackSequence == 0 || trackSequence == 6)) {
thickness = 26;
}
track_paint_util_right_quarter_turn_5_tiles_paint(thickness, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_banked_quarter_turn_5_tiles, NULL, junior_rc_banked_right_quarter_turn_5_tiles_bound_lengths, junior_rc_banked_right_quarter_turn_5_tiles_bound_offsets, get_current_rotation());
track_paint_util_right_quarter_turn_5_tiles_paint(session, thickness, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_banked_quarter_turn_5_tiles, NULL, junior_rc_banked_right_quarter_turn_5_tiles_bound_lengths, junior_rc_banked_right_quarter_turn_5_tiles_bound_offsets, get_current_rotation());
if (direction == 1 && trackSequence == 6) {
uint32 imageId = SPR_JUNIOR_RC_BANKED_QUARTER_TURN_5_TILES_NW_SW_PART_4_2 | gTrackColours[SCHEME_TRACK];
@ -2550,7 +2550,7 @@ static void junior_rc_right_bank_paint_setup(paint_session * session, uint8 ride
void junior_rc_paint_track_left_quarter_turn_5_tiles_25_deg_up(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, uint16 height, rct_map_element* mapElement, JUNIOR_RC_CHAINTYPE chainType)
{
track_paint_util_right_quarter_turn_5_tiles_paint(1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_left_quarter_turn_5_tiles_25_deg_up[chainType], junior_rc_left_quarter_turn_5_tiles_25_deg_up_offsets, defaultRightQuarterTurn5TilesBoundLengths, NULL, get_current_rotation());
track_paint_util_right_quarter_turn_5_tiles_paint(session, 1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_left_quarter_turn_5_tiles_25_deg_up[chainType], junior_rc_left_quarter_turn_5_tiles_25_deg_up_offsets, defaultRightQuarterTurn5TilesBoundLengths, NULL, get_current_rotation());
uint8 supportSpecial[4] = { 8, 8, 8, 3 };
switch (trackSequence) {
@ -2592,7 +2592,7 @@ void junior_rc_paint_track_left_quarter_turn_5_tiles_25_deg_up(paint_session * s
void junior_rc_paint_track_right_quarter_turn_5_tiles_25_deg_up(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, uint16 height, rct_map_element* mapElement, JUNIOR_RC_CHAINTYPE chainType)
{
track_paint_util_right_quarter_turn_5_tiles_paint(1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_right_quarter_turn_5_tiles_25_deg_up[chainType], defaultRightQuarterTurn5TilesOffsets, defaultRightQuarterTurn5TilesBoundLengths, NULL, get_current_rotation());
track_paint_util_right_quarter_turn_5_tiles_paint(session, 1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_right_quarter_turn_5_tiles_25_deg_up[chainType], defaultRightQuarterTurn5TilesOffsets, defaultRightQuarterTurn5TilesBoundLengths, NULL, get_current_rotation());
uint8 supportSpecial[4] = { 11, 8, 8, 7 };
switch (trackSequence) {
@ -2785,8 +2785,8 @@ static void junior_rc_s_bend_right_paint_setup(paint_session * session, uint8 ri
/** rct2: 0x008AAEB0, 0x0051C0E0, 0x0051C2C1, 0x0051C47F, 0x0051C61D */
static void junior_rc_right_quarter_turn_3_tiles_paint_setup(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
track_paint_util_right_quarter_turn_3_tiles_paint(1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_flat_quarter_turn_3_tiles, defaultRightQuarterTurn3TilesOffsets, defaultRightQuarterTurn3TilesBoundLengths, NULL, get_current_rotation());
track_paint_util_right_quarter_turn_3_tiles_tunnel(height, direction, trackSequence, TUNNEL_0);
track_paint_util_right_quarter_turn_3_tiles_paint(session, 1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_flat_quarter_turn_3_tiles, defaultRightQuarterTurn3TilesOffsets, defaultRightQuarterTurn3TilesBoundLengths, NULL, get_current_rotation());
track_paint_util_right_quarter_turn_3_tiles_tunnel(session, height, direction, trackSequence, TUNNEL_0);
uint8 supportType[2][4] = {
{ 1, 0, 0, 2},
@ -2893,8 +2893,8 @@ static void junior_rc_right_quarter_turn_3_tiles_bank_paint_setup(paint_session
}
};
track_paint_util_right_quarter_turn_3_tiles_paint(thickness[direction][trackSequence], height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_banked_quarter_turn_3_tiles, NULL, junior_rc_right_quarter_turn_3_tiles_bank_bound_lengths, junior_rc_right_quarter_turn_3_tiles_bank_offsets, get_current_rotation());
track_paint_util_right_quarter_turn_3_tiles_tunnel(height, direction, trackSequence, TUNNEL_0);
track_paint_util_right_quarter_turn_3_tiles_paint(session, thickness[direction][trackSequence], height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_banked_quarter_turn_3_tiles, NULL, junior_rc_right_quarter_turn_3_tiles_bank_bound_lengths, junior_rc_right_quarter_turn_3_tiles_bank_offsets, get_current_rotation());
track_paint_util_right_quarter_turn_3_tiles_tunnel(session, height, direction, trackSequence, TUNNEL_0);
if (direction == 1 && trackSequence == 3) {
uint32 imageId = SPR_JUNIOR_RC_BANKED_QUARTER_TURN_3_TILES_NW_SW_PART_2_2 | gTrackColours[SCHEME_TRACK];
@ -3103,7 +3103,7 @@ static void junior_rc_right_half_banked_helix_up_small_paint_setup(paint_session
direction++;
direction &= 3;
}
track_paint_util_right_helix_up_small_quarter_tiles_paint(thickness, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_right_half_banked_helix_up_small_quarter_tiles, NULL, defaultRightHelixUpSmallQuarterBoundLengths, defaultRightHelixUpSmallQuarterBoundOffsets, get_current_rotation());
track_paint_util_right_helix_up_small_quarter_tiles_paint(session, thickness, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_right_half_banked_helix_up_small_quarter_tiles, NULL, defaultRightHelixUpSmallQuarterBoundLengths, defaultRightHelixUpSmallQuarterBoundOffsets, get_current_rotation());
if (trackSequence == 0) {
metal_a_supports_paint_setup(session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, 4, 2, height, gTrackColours[SCHEME_SUPPORTS]);
@ -3148,7 +3148,7 @@ static void junior_rc_right_half_banked_helix_down_small_paint_setup(paint_sessi
direction++;
direction &= 3;
}
track_paint_util_right_helix_up_small_quarter_tiles_paint(thickness, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_right_half_banked_helix_down_small_quarter_tiles, NULL, defaultRightHelixUpSmallQuarterBoundLengths, defaultRightHelixUpSmallQuarterBoundOffsets, get_current_rotation());
track_paint_util_right_helix_up_small_quarter_tiles_paint(session, thickness, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_right_half_banked_helix_down_small_quarter_tiles, NULL, defaultRightHelixUpSmallQuarterBoundLengths, defaultRightHelixUpSmallQuarterBoundOffsets, get_current_rotation());
if (trackSequence == 0) {
metal_a_supports_paint_setup(session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, 4, 6, height, gTrackColours[SCHEME_SUPPORTS]);
@ -3217,7 +3217,7 @@ static void junior_rc_right_half_banked_helix_up_large_paint_setup(paint_session
direction++;
direction &= 3;
}
track_paint_util_right_helix_up_large_quarter_tiles_paint(thickness, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_right_half_banked_helix_up_large_quarter_tiles, NULL, defaultRightHelixUpLargeQuarterBoundLengths, defaultRightHelixUpLargeQuarterBoundOffsets, get_current_rotation());
track_paint_util_right_helix_up_large_quarter_tiles_paint(session, thickness, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_right_half_banked_helix_up_large_quarter_tiles, NULL, defaultRightHelixUpLargeQuarterBoundLengths, defaultRightHelixUpLargeQuarterBoundOffsets, get_current_rotation());
if (trackSequence == 0) {
metal_a_supports_paint_setup(session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, 4, 1, height, gTrackColours[SCHEME_SUPPORTS]);
@ -3263,7 +3263,7 @@ static void junior_rc_right_half_banked_helix_down_large_paint_setup(paint_sessi
direction++;
direction &= 3;
}
track_paint_util_right_helix_up_large_quarter_tiles_paint(thickness, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_right_half_banked_helix_down_large_quarter_tiles, NULL, defaultRightHelixUpLargeQuarterBoundLengths, defaultRightHelixUpLargeQuarterBoundOffsets, get_current_rotation());
track_paint_util_right_helix_up_large_quarter_tiles_paint(session, thickness, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_right_half_banked_helix_down_large_quarter_tiles, NULL, defaultRightHelixUpLargeQuarterBoundLengths, defaultRightHelixUpLargeQuarterBoundOffsets, get_current_rotation());
if (trackSequence == 0) {
metal_a_supports_paint_setup(session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, 4, 7, height, gTrackColours[SCHEME_SUPPORTS]);
@ -3386,7 +3386,7 @@ static void junior_rc_block_brake_paint_setup(paint_session * session, uint8 rid
/** rct2: 0x008AAF80 */
static void junior_rc_left_eighth_to_diag_paint_setup(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
track_paint_util_eighth_to_diag_tiles_paint(defaultEighthToDiagThickness, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_left_eight_to_diag, 0, defaultLeftEighthToDiagBoundLengths, defaultLeftEighthToDiagBoundOffsets, get_current_rotation());
track_paint_util_eighth_to_diag_tiles_paint(session, defaultEighthToDiagThickness, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_left_eight_to_diag, 0, defaultLeftEighthToDiagBoundLengths, defaultLeftEighthToDiagBoundOffsets, get_current_rotation());
switch (trackSequence) {
case 0:
@ -3423,7 +3423,7 @@ static void junior_rc_left_eighth_to_diag_paint_setup(paint_session * session, u
/** rct2: 0x008AAF90 */
static void junior_rc_right_eighth_to_diag_paint_setup(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
track_paint_util_eighth_to_diag_tiles_paint(defaultEighthToDiagThickness, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_right_eight_to_diag, 0, defaultRightEighthToDiagBoundLengths, defaultRightEighthToDiagBoundOffsets, get_current_rotation());
track_paint_util_eighth_to_diag_tiles_paint(session, defaultEighthToDiagThickness, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_right_eight_to_diag, 0, defaultRightEighthToDiagBoundLengths, defaultRightEighthToDiagBoundOffsets, get_current_rotation());
switch (trackSequence) {
case 0:
@ -3557,7 +3557,7 @@ static const sint8 junior_rc_left_eighth_to_diag_bank_thickness[4][4] = {
/** rct2: 0x008AB160 */
static void junior_rc_left_eighth_to_diag_bank_paint_setup(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
track_paint_util_eighth_to_diag_tiles_paint(junior_rc_left_eighth_to_diag_bank_thickness, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_left_eight_to_diag_bank, 0, junior_rc_left_eighth_to_diag_bank_bound_lengths, junior_rc_left_eighth_to_diag_bank_bound_offsets, get_current_rotation());
track_paint_util_eighth_to_diag_tiles_paint(session, junior_rc_left_eighth_to_diag_bank_thickness, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_left_eight_to_diag_bank, 0, junior_rc_left_eighth_to_diag_bank_bound_lengths, junior_rc_left_eighth_to_diag_bank_bound_offsets, get_current_rotation());
switch (trackSequence) {
case 0:
@ -3675,7 +3675,7 @@ static const sint8 junior_rc_right_eighth_to_diag_bank_thickness[4][4] = {
/** rct2: 0x008AB170 */
static void junior_rc_right_eighth_to_diag_bank_paint_setup(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
track_paint_util_eighth_to_diag_tiles_paint(junior_rc_right_eighth_to_diag_bank_thickness, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_right_eight_to_diag_bank, 0, junior_rc_right_eighth_to_diag_bank_bound_lengths, junior_rc_right_eighth_to_diag_bank_bound_offsets, get_current_rotation());
track_paint_util_eighth_to_diag_tiles_paint(session, junior_rc_right_eighth_to_diag_bank_thickness, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_right_eight_to_diag_bank, 0, junior_rc_right_eighth_to_diag_bank_bound_lengths, junior_rc_right_eighth_to_diag_bank_bound_offsets, get_current_rotation());
switch (trackSequence) {
case 0:
@ -3736,7 +3736,7 @@ static const uint8 junior_rc_diag_support_segment[] = {1, 0, 2, 3};
void junior_rc_paint_track_diag_flat(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, uint16 height, rct_map_element* mapElement, JUNIOR_RC_CHAINTYPE chainType)
{
track_paint_util_diag_tiles_paint(1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_flat[chainType], defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
track_paint_util_diag_tiles_paint(session, 1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_flat[chainType], defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
if (trackSequence == 3) {
metal_a_supports_paint_setup(session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, junior_rc_diag_support_segment[direction], 0, height, gTrackColours[SCHEME_SUPPORTS]);
@ -3749,7 +3749,7 @@ void junior_rc_paint_track_diag_flat(paint_session * session, uint8 rideIndex, u
void junior_rc_paint_track_diag_25_deg_up(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, uint16 height, rct_map_element* mapElement, JUNIOR_RC_CHAINTYPE chainType)
{
track_paint_util_diag_tiles_paint(1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_25_deg_up[chainType], defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
track_paint_util_diag_tiles_paint(session, 1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_25_deg_up[chainType], defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
if (trackSequence == 3) {
metal_b_supports_paint_setup(session, (direction & 1) ? 2 : 1, junior_rc_diag_support_segment[direction], 8, height, gTrackColours[SCHEME_SUPPORTS]);
@ -3762,7 +3762,7 @@ void junior_rc_paint_track_diag_25_deg_up(paint_session * session, uint8 rideInd
void junior_rc_paint_track_diag_flat_to_25_deg_up(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, uint16 height, rct_map_element* mapElement, JUNIOR_RC_CHAINTYPE chainType)
{
track_paint_util_diag_tiles_paint(1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_flat_to_25_deg_up[chainType], defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
track_paint_util_diag_tiles_paint(session, 1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_flat_to_25_deg_up[chainType], defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
if (trackSequence == 3) {
metal_b_supports_paint_setup(session, (direction & 1) ? 2 : 1, junior_rc_diag_support_segment[direction], 0, height, gTrackColours[SCHEME_SUPPORTS]);
@ -3778,7 +3778,7 @@ void junior_rc_paint_track_diag_flat_to_60_deg_up(paint_session * session, uint8
// There is no specific chain for the Water Coaster, use the Junior RC chain instead
chainType = min(1, chainType);
track_paint_util_diag_tiles_paint(1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_flat_to_60_deg_up[chainType], defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
track_paint_util_diag_tiles_paint(session, 1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_flat_to_60_deg_up[chainType], defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
if (trackSequence == 3) {
metal_b_supports_paint_setup(session, (direction & 1) ? 2 : 1, junior_rc_diag_support_segment[direction], 0, height + 6, gTrackColours[SCHEME_SUPPORTS]);
@ -3791,7 +3791,7 @@ void junior_rc_paint_track_diag_flat_to_60_deg_up(paint_session * session, uint8
void junior_rc_paint_track_diag_25_deg_up_to_flat(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, uint16 height, rct_map_element* mapElement, JUNIOR_RC_CHAINTYPE chainType)
{
track_paint_util_diag_tiles_paint(1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_25_deg_up_to_flat[chainType], defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
track_paint_util_diag_tiles_paint(session, 1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_25_deg_up_to_flat[chainType], defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
if (trackSequence == 3) {
metal_b_supports_paint_setup(session, (direction & 1) ? 2 : 1, junior_rc_diag_support_segment[direction], 4, height, gTrackColours[SCHEME_SUPPORTS]);
@ -3807,7 +3807,7 @@ void junior_rc_paint_track_diag_60_deg_up_to_flat(paint_session * session, uint8
// There is no specific chain for the Water Coaster, use the Junior RC chain instead
chainType = min(1, chainType);
track_paint_util_diag_tiles_paint(1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_60_deg_up_to_flat[chainType], defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
track_paint_util_diag_tiles_paint(session, 1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_60_deg_up_to_flat[chainType], defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
if (trackSequence == 3) {
metal_b_supports_paint_setup(session, (direction & 1) ? 2 : 1, junior_rc_diag_support_segment[direction], 4, height + 13, gTrackColours[SCHEME_SUPPORTS]);
@ -3821,7 +3821,7 @@ void junior_rc_paint_track_diag_60_deg_up_to_flat(paint_session * session, uint8
void junior_rc_paint_track_diag_25_deg_down(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, uint16 height, rct_map_element* mapElement, JUNIOR_RC_CHAINTYPE chainType)
{
track_paint_util_diag_tiles_paint(1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_25_deg_down[chainType], defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
track_paint_util_diag_tiles_paint(session, 1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_25_deg_down[chainType], defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
if (trackSequence == 3) {
metal_b_supports_paint_setup(session, (direction & 1) ? 2 : 1, junior_rc_diag_support_segment[direction], 8, height, gTrackColours[SCHEME_SUPPORTS]);
@ -3834,7 +3834,7 @@ void junior_rc_paint_track_diag_25_deg_down(paint_session * session, uint8 rideI
void junior_rc_paint_track_diag_flat_to_25_deg_down(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, uint16 height, rct_map_element* mapElement, JUNIOR_RC_CHAINTYPE chainType)
{
track_paint_util_diag_tiles_paint(1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_flat_to_25_deg_down[chainType], defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
track_paint_util_diag_tiles_paint(session, 1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_flat_to_25_deg_down[chainType], defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
if (trackSequence == 3) {
metal_b_supports_paint_setup(session, (direction & 1) ? 2 : 1, junior_rc_diag_support_segment[direction], 4, height, gTrackColours[SCHEME_SUPPORTS]);
@ -3850,7 +3850,7 @@ void junior_rc_paint_track_diag_flat_to_60_deg_down(paint_session * session, uin
// There is no specific chain for the Water Coaster, use the Junior RC chain instead
chainType = min(1, chainType);
track_paint_util_diag_tiles_paint(1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_flat_to_60_deg_down[chainType], defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
track_paint_util_diag_tiles_paint(session, 1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_flat_to_60_deg_down[chainType], defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
if (trackSequence == 3) {
metal_b_supports_paint_setup(session, (direction & 1) ? 2 : 1, junior_rc_diag_support_segment[direction], 4, height + 7, gTrackColours[SCHEME_SUPPORTS]);
@ -3863,7 +3863,7 @@ void junior_rc_paint_track_diag_flat_to_60_deg_down(paint_session * session, uin
void junior_rc_paint_track_diag_25_deg_down_to_flat(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, uint16 height, rct_map_element* mapElement, JUNIOR_RC_CHAINTYPE chainType)
{
track_paint_util_diag_tiles_paint(1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_25_deg_down_to_flat[chainType], defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
track_paint_util_diag_tiles_paint(session, 1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_25_deg_down_to_flat[chainType], defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
if (trackSequence == 3) {
metal_b_supports_paint_setup(session, (direction & 1) ? 2 : 1, junior_rc_diag_support_segment[direction], 0, height, gTrackColours[SCHEME_SUPPORTS]);
@ -3879,7 +3879,7 @@ void junior_rc_paint_track_diag_60_deg_down_to_flat(paint_session * session, uin
// There is no specific chain for the Water Coaster, use the Junior RC chain instead
chainType = min(1, chainType);
track_paint_util_diag_tiles_paint(1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_60_deg_down_to_flat[chainType], defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
track_paint_util_diag_tiles_paint(session, 1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_60_deg_down_to_flat[chainType], defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
if (trackSequence == 3) {
metal_b_supports_paint_setup(session, (direction & 1) ? 2 : 1, junior_rc_diag_support_segment[direction], 0, height, gTrackColours[SCHEME_SUPPORTS]);
@ -3966,7 +3966,7 @@ static void junior_rc_diag_60_deg_down_to_flat_paint_setup(paint_session * sessi
/** rct2: 0x008AB1C0 */
static void junior_rc_diag_flat_to_left_bank_paint_setup(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
track_paint_util_diag_tiles_paint(1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_flat_to_left_bank, defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
track_paint_util_diag_tiles_paint(session, 1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_flat_to_left_bank, defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
if (direction == 0 && trackSequence == 1) {
uint32 imageId = SPR_JUNIOR_RC_DIAG_FLAT_TO_LEFT_BANK_W_E_PART_0_2 | gTrackColours[SCHEME_TRACK];
@ -3985,7 +3985,7 @@ static void junior_rc_diag_flat_to_left_bank_paint_setup(paint_session * session
/** rct2: 0x008AB1D0 */
static void junior_rc_diag_flat_to_right_bank_paint_setup(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
track_paint_util_diag_tiles_paint(1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_flat_to_right_bank, defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
track_paint_util_diag_tiles_paint(session, 1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_flat_to_right_bank, defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
if (direction == 2 && trackSequence == 2) {
uint32 imageId = SPR_JUNIOR_RC_DIAG_FLAT_TO_RIGHT_BANK_E_W_PART_0_2 | gTrackColours[SCHEME_TRACK];
@ -4004,7 +4004,7 @@ static void junior_rc_diag_flat_to_right_bank_paint_setup(paint_session * sessio
/** rct2: 0x008AB1E0 */
static void junior_rc_diag_left_bank_to_flat_paint_setup(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
track_paint_util_diag_tiles_paint(1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_left_bank_to_flat, defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
track_paint_util_diag_tiles_paint(session, 1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_left_bank_to_flat, defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
if (direction == 0 && trackSequence == 1) {
uint32 imageId = SPR_JUNIOR_RC_DIAG_FLAT_TO_RIGHT_BANK_E_W_PART_0_2 | gTrackColours[SCHEME_TRACK];
@ -4023,7 +4023,7 @@ static void junior_rc_diag_left_bank_to_flat_paint_setup(paint_session * session
/** rct2: 0x008AB1F0 */
static void junior_rc_diag_right_bank_to_flat_paint_setup(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
track_paint_util_diag_tiles_paint(1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_right_bank_to_flat, defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
track_paint_util_diag_tiles_paint(session, 1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_right_bank_to_flat, defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
if (direction == 2 && trackSequence == 2) {
uint32 imageId = SPR_JUNIOR_RC_DIAG_FLAT_TO_LEFT_BANK_W_E_PART_0_2 | gTrackColours[SCHEME_TRACK];
@ -4042,7 +4042,7 @@ static void junior_rc_diag_right_bank_to_flat_paint_setup(paint_session * sessio
/** rct2: 0x008AB220 */
static void junior_rc_diag_left_bank_to_25_deg_up_paint_setup(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
track_paint_util_diag_tiles_paint(1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_left_bank_to_25_deg_up, defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
track_paint_util_diag_tiles_paint(session, 1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_left_bank_to_25_deg_up, defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
if (direction == 0 && trackSequence == 1) {
uint32 imageId = SPR_JUNIOR_RC_DIAG_LEFT_BANK_TO_25_DEG_UP_W_E_PART_0_2 | gTrackColours[SCHEME_TRACK];
@ -4061,7 +4061,7 @@ static void junior_rc_diag_left_bank_to_25_deg_up_paint_setup(paint_session * se
/** rct2: 0x008AB230 */
static void junior_rc_diag_right_bank_to_25_deg_up_paint_setup(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
track_paint_util_diag_tiles_paint(1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_right_bank_to_25_deg_up, defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
track_paint_util_diag_tiles_paint(session, 1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_right_bank_to_25_deg_up, defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
if (direction == 2 && trackSequence == 2) {
uint32 imageId = SPR_JUNIOR_RC_DIAG_RIGHT_BANK_TO_25_DEG_UP_E_W_PART_0_2 | gTrackColours[SCHEME_TRACK];
@ -4080,7 +4080,7 @@ static void junior_rc_diag_right_bank_to_25_deg_up_paint_setup(paint_session * s
/** rct2: 0x008AB200 */
static void junior_rc_diag_25_deg_up_to_left_bank_paint_setup(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
track_paint_util_diag_tiles_paint(1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_25_deg_up_to_left_bank, defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
track_paint_util_diag_tiles_paint(session, 1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_25_deg_up_to_left_bank, defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
if (direction == 0 && trackSequence == 1) {
uint32 imageId = SPR_JUNIOR_RC_DIAG_25_DEG_UP_TO_LEFT_BANK_W_E_PART_0_2 | gTrackColours[SCHEME_TRACK];
@ -4099,7 +4099,7 @@ static void junior_rc_diag_25_deg_up_to_left_bank_paint_setup(paint_session * se
/** rct2: 0x008AB210 */
static void junior_rc_diag_25_deg_up_to_right_bank_paint_setup(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
track_paint_util_diag_tiles_paint(1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_25_deg_up_to_right_bank, defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
track_paint_util_diag_tiles_paint(session, 1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_25_deg_up_to_right_bank, defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
if (direction == 2 && trackSequence == 2) {
uint32 imageId = SPR_JUNIOR_RC_DIAG_25_DEG_UP_TO_RIGHT_BANK_E_W_PART_0_2 | gTrackColours[SCHEME_TRACK];
@ -4118,7 +4118,7 @@ static void junior_rc_diag_25_deg_up_to_right_bank_paint_setup(paint_session * s
/** rct2: 0x008AB200 */
static void junior_rc_diag_left_bank_to_25_deg_down_paint_setup(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
track_paint_util_diag_tiles_paint(1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_left_bank_to_25_deg_down, defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
track_paint_util_diag_tiles_paint(session, 1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_left_bank_to_25_deg_down, defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
if (direction == 0 && trackSequence == 1) {
uint32 imageId = SPR_JUNIOR_RC_DIAG_25_DEG_UP_TO_RIGHT_BANK_E_W_PART_0_2 | gTrackColours[SCHEME_TRACK];
@ -4137,7 +4137,7 @@ static void junior_rc_diag_left_bank_to_25_deg_down_paint_setup(paint_session *
/** rct2: 0x008AB210 */
static void junior_rc_diag_right_bank_to_25_deg_down_paint_setup(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
track_paint_util_diag_tiles_paint(1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_right_bank_to_25_deg_down, defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
track_paint_util_diag_tiles_paint(session, 1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_right_bank_to_25_deg_down, defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
if (direction == 2 && trackSequence == 2) {
uint32 imageId = SPR_JUNIOR_RC_DIAG_25_DEG_UP_TO_LEFT_BANK_W_E_PART_0_2 | gTrackColours[SCHEME_TRACK];
@ -4156,7 +4156,7 @@ static void junior_rc_diag_right_bank_to_25_deg_down_paint_setup(paint_session *
/** rct2: 0x008AB220 */
static void junior_rc_diag_25_deg_down_to_left_bank_paint_setup(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
track_paint_util_diag_tiles_paint(1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_25_deg_down_to_left_bank, defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
track_paint_util_diag_tiles_paint(session, 1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_25_deg_down_to_left_bank, defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
if (direction == 0 && trackSequence == 1) {
uint32 imageId = SPR_JUNIOR_RC_DIAG_RIGHT_BANK_TO_25_DEG_UP_E_W_PART_0_2 | gTrackColours[SCHEME_TRACK];
@ -4175,7 +4175,7 @@ static void junior_rc_diag_25_deg_down_to_left_bank_paint_setup(paint_session *
/** rct2: 0x008AB230 */
static void junior_rc_diag_25_deg_down_to_right_bank_paint_setup(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
track_paint_util_diag_tiles_paint(1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_25_deg_down_to_right_bank, defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
track_paint_util_diag_tiles_paint(session, 1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_25_deg_down_to_right_bank, defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
if (direction == 2 && trackSequence == 2) {
uint32 imageId = SPR_JUNIOR_RC_DIAG_LEFT_BANK_TO_25_DEG_UP_W_E_PART_0_2 | gTrackColours[SCHEME_TRACK];
@ -4209,7 +4209,7 @@ const rct_xyz16 junior_rc_diag_right_bank_bound_offsets[4] = {
static void junior_rc_diag_left_bank_paint_setup(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
uint8 thickness = direction == 0 ? 0 : 1;
track_paint_util_diag_tiles_paint(thickness, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_left_bank, defaultDiagTileOffsets, defaultDiagBoundLengths, junior_rc_diag_left_bank_bound_offsets, get_current_rotation());
track_paint_util_diag_tiles_paint(session, thickness, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_left_bank, defaultDiagTileOffsets, defaultDiagBoundLengths, junior_rc_diag_left_bank_bound_offsets, get_current_rotation());
if (trackSequence == 3) {
metal_a_supports_paint_setup(session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, junior_rc_diag_support_segment[direction], 0, height, gTrackColours[SCHEME_SUPPORTS]);
@ -4224,7 +4224,7 @@ static void junior_rc_diag_left_bank_paint_setup(paint_session * session, uint8
static void junior_rc_diag_right_bank_paint_setup(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
uint8 thickness = direction == 2 ? 0 : 1;
track_paint_util_diag_tiles_paint(thickness, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_right_bank, defaultDiagTileOffsets, defaultDiagBoundLengths, junior_rc_diag_right_bank_bound_offsets, get_current_rotation());
track_paint_util_diag_tiles_paint(session, thickness, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_right_bank, defaultDiagTileOffsets, defaultDiagBoundLengths, junior_rc_diag_right_bank_bound_offsets, get_current_rotation());
if (trackSequence == 3) {
metal_a_supports_paint_setup(session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, junior_rc_diag_support_segment[direction], 0, height, gTrackColours[SCHEME_SUPPORTS]);
@ -4483,7 +4483,7 @@ static void junior_rc_25_deg_down_to_60_deg_down_paint_setup(paint_session * ses
void junior_rc_paint_track_diag_60_deg_up(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, uint16 height, rct_map_element* mapElement, JUNIOR_RC_CHAINTYPE chainType)
{
track_paint_util_diag_tiles_paint(1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_60_deg_up[chainType], defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
track_paint_util_diag_tiles_paint(session, 1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_60_deg_up[chainType], defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
if (trackSequence == 3) {
metal_b_supports_paint_setup(session, (direction & 1) ? 2 : 1, junior_rc_diag_support_segment[direction], 36, height, gTrackColours[SCHEME_SUPPORTS]);
@ -4496,7 +4496,7 @@ void junior_rc_paint_track_diag_60_deg_up(paint_session * session, uint8 rideInd
void junior_rc_paint_track_diag_60_deg_down(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, uint16 height, rct_map_element* mapElement, JUNIOR_RC_CHAINTYPE chainType)
{
track_paint_util_diag_tiles_paint(1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_60_deg_down[chainType], defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
track_paint_util_diag_tiles_paint(session, 1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_60_deg_down[chainType], defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
if (trackSequence == 3) {
metal_b_supports_paint_setup(session, (direction & 1) ? 2 : 1, junior_rc_diag_support_segment[direction], 28, height, gTrackColours[SCHEME_SUPPORTS]);
@ -4509,7 +4509,7 @@ void junior_rc_paint_track_diag_60_deg_down(paint_session * session, uint8 rideI
void junior_rc_paint_track_diag_25_deg_up_to_60_deg_up(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, uint16 height, rct_map_element* mapElement, JUNIOR_RC_CHAINTYPE chainType)
{
track_paint_util_diag_tiles_paint(1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_25_deg_up_to_60_deg_up[chainType], defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
track_paint_util_diag_tiles_paint(session, 1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_25_deg_up_to_60_deg_up[chainType], defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
if (trackSequence == 3) {
metal_b_supports_paint_setup(session, (direction & 1) ? 2 : 1, junior_rc_diag_support_segment[direction], 16, height, gTrackColours[SCHEME_SUPPORTS]);
@ -4532,7 +4532,7 @@ void junior_rc_paint_track_diag_60_deg_up_to_25_deg_up(paint_session * session,
get_current_rotation()
);
} else {
track_paint_util_diag_tiles_paint(1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_60_deg_up_to_25_deg_up[chainType], defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
track_paint_util_diag_tiles_paint(session, 1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_60_deg_up_to_25_deg_up[chainType], defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
}
if (trackSequence == 3) {
@ -4556,7 +4556,7 @@ void junior_rc_paint_track_diag_25_deg_down_to_60_deg_down(paint_session * sessi
get_current_rotation()
);
} else {
track_paint_util_diag_tiles_paint(1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_25_deg_down_to_60_deg_down[chainType], defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
track_paint_util_diag_tiles_paint(session, 1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_25_deg_down_to_60_deg_down[chainType], defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
}
if (trackSequence == 3) {
@ -4570,7 +4570,7 @@ void junior_rc_paint_track_diag_25_deg_down_to_60_deg_down(paint_session * sessi
void junior_rc_paint_track_diag_60_deg_down_to_25_deg_down(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, uint16 height, rct_map_element* mapElement, JUNIOR_RC_CHAINTYPE chainType)
{
track_paint_util_diag_tiles_paint(1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_60_deg_down_to_25_deg_down[chainType], defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
track_paint_util_diag_tiles_paint(session, 1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_60_deg_down_to_25_deg_down[chainType], defaultDiagTileOffsets, defaultDiagBoundLengths, 0, get_current_rotation());
if (trackSequence == 3) {
metal_b_supports_paint_setup(session, (direction & 1) ? 2 : 1, junior_rc_diag_support_segment[direction], 8, height, gTrackColours[SCHEME_SUPPORTS]);

View File

@ -117,7 +117,7 @@ static void lay_down_rc_track_station(paint_session * session, uint8 rideIndex,
sub_98197C_rotated(direction, imageIds[direction][1] | gTrackColours[SCHEME_TRACK], 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24);
sub_98199C_rotated(direction, imageIds[direction][2] | gTrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 1, height + 24, 0, 6, height + 24);
track_paint_util_draw_station_metal_supports_2(session, direction, height, gTrackColours[SCHEME_SUPPORTS], 11);
track_paint_util_draw_station_inverted(rideIndex, trackSequence, direction, height, mapElement, STATION_VARIANT_1);
track_paint_util_draw_station_inverted(session, rideIndex, trackSequence, direction, height, mapElement, STATION_VARIANT_1);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_9);
} else {
static const uint32 imageIds[4][3] = {
@ -134,7 +134,7 @@ static void lay_down_rc_track_station(paint_session * session, uint8 rideIndex,
}
sub_98196C_rotated(direction, imageIds[direction][2] | gTrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height);
track_paint_util_draw_station_metal_supports_2(session, direction, height, gTrackColours[SCHEME_SUPPORTS], 11);
track_paint_util_draw_station_2(rideIndex, trackSequence, direction, height, mapElement, 9, 11);
track_paint_util_draw_station_2(session, rideIndex, trackSequence, direction, height, mapElement, 9, 11);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
}
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
@ -3419,7 +3419,7 @@ static void lay_down_rc_track_right_vertical_loop(paint_session * session, uint8
}
}
track_paint_util_right_vertical_loop_segments(direction, trackSequence);
track_paint_util_right_vertical_loop_segments(session, direction, trackSequence);
}
/** rct2: 0x00824BBC */
@ -5617,7 +5617,7 @@ static void lay_down_rc_track_left_quarter_turn_1_60_deg_up(paint_session * sess
break;
}
}
track_paint_util_left_quarter_turn_1_tile_tunnel(direction, height, -8, TUNNEL_1, +56, TUNNEL_2);
track_paint_util_left_quarter_turn_1_tile_tunnel(session, direction, height, -8, TUNNEL_1, +56, TUNNEL_2);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 104, 0x20);
}
@ -5665,7 +5665,7 @@ static void lay_down_rc_track_right_quarter_turn_1_60_deg_up(paint_session * ses
}
}
track_paint_util_right_quarter_turn_1_tile_tunnel(direction, height, -8, TUNNEL_1, +56, TUNNEL_2);
track_paint_util_right_quarter_turn_1_tile_tunnel(session, direction, height, -8, TUNNEL_1, +56, TUNNEL_2);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 104, 0x20);
}
@ -5754,7 +5754,7 @@ static void lay_down_rc_track_on_ride_photo(paint_session * session, uint8 rideI
sub_98197C_rotated(direction, gTrackColours[SCHEME_TRACK] | 16225, 0, 0, 32, 20, 0, height, 0, 6, height + 3);
break;
}
track_paint_util_onride_photo_paint(direction, height + 3, mapElement);
track_paint_util_onride_photo_paint(session, direction, height + 3, mapElement);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_0);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 48, 0x20);
@ -5785,7 +5785,7 @@ static void lay_down_rc_track_on_ride_photo(paint_session * session, uint8 rideI
sub_98197C_rotated(direction, gTrackColours[SCHEME_TRACK] | 26556, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24);
break;
}
track_paint_util_onride_photo_paint(direction, height + 3, mapElement);
track_paint_util_onride_photo_paint(session, direction, height + 3, mapElement);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_0);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 64, 0x20);

View File

@ -43,7 +43,7 @@ static void lim_launched_rc_track_station(paint_session * session, uint8 rideInd
}
sub_98196C_rotated(direction, imageIds[direction][2] | gTrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height);
track_paint_util_draw_station_metal_supports_2(session, direction, height, gTrackColours[SCHEME_SUPPORTS], 0);
track_paint_util_draw_station(rideIndex, trackSequence, direction, height, mapElement);
track_paint_util_draw_station(session, rideIndex, trackSequence, direction, height, mapElement);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 32, 0x20);
@ -386,7 +386,7 @@ static void lim_launched_rc_track_right_vertical_loop(paint_session * session, u
break;
}
track_paint_util_right_vertical_loop_segments(direction, trackSequence);
track_paint_util_right_vertical_loop_segments(session, direction, trackSequence);
}
/** rct2: 0x008A6D10 */

View File

@ -79,7 +79,7 @@ static void looping_rc_track_station(paint_session * session, uint8 rideIndex, u
sub_98197C_rotated(direction, imageIds[direction][0] | gTrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, height + 3);
sub_98196C_rotated(direction, imageIds[direction][1] | gTrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height);
track_paint_util_draw_station_metal_supports_2(session, direction, height, gTrackColours[SCHEME_SUPPORTS], 0);
track_paint_util_draw_station(rideIndex, trackSequence, direction, height, mapElement);
track_paint_util_draw_station(session, rideIndex, trackSequence, direction, height, mapElement);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 32, 0x20);
@ -1755,7 +1755,7 @@ static void looping_rc_track_right_vertical_loop(paint_session * session, uint8
break;
}
track_paint_util_right_vertical_loop_segments(direction, trackSequence);
track_paint_util_right_vertical_loop_segments(session, direction, trackSequence);
}
/** rct2: 0x008A6630 */
@ -2894,7 +2894,7 @@ static void looping_rc_track_left_quarter_turn_1_60_deg_up(paint_session * sessi
sub_98197C_rotated(direction, gTrackColours[SCHEME_TRACK] | 15344, 0, 0, 28, 28, 1, height, 2, 2, height + 99);
break;
}
track_paint_util_left_quarter_turn_1_tile_tunnel(direction, height, -8, TUNNEL_1, +56, TUNNEL_2);
track_paint_util_left_quarter_turn_1_tile_tunnel(session, direction, height, -8, TUNNEL_1, +56, TUNNEL_2);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 104, 0x20);
}
@ -2920,7 +2920,7 @@ static void looping_rc_track_right_quarter_turn_1_60_deg_up(paint_session * sess
sub_98197C_rotated(direction, gTrackColours[SCHEME_TRACK] | 15339, 0, 0, 28, 28, 1, height, 2, 2, height + 99);
break;
}
track_paint_util_right_quarter_turn_1_tile_tunnel(direction, height, -8, TUNNEL_1, +56, TUNNEL_2);
track_paint_util_right_quarter_turn_1_tile_tunnel(session, direction, height, -8, TUNNEL_1, +56, TUNNEL_2);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 104, 0x20);
}
@ -3047,7 +3047,7 @@ static void looping_rc_track_on_ride_photo(paint_session * session, uint8 rideIn
sub_98197C_rotated(direction, gTrackColours[SCHEME_TRACK] | 15005, 0, 0, 32, 20, 0, height, 0, 6, height + 3);
break;
}
track_paint_util_onride_photo_paint(direction, height + 3, mapElement);
track_paint_util_onride_photo_paint(session, direction, height + 3, mapElement);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_0);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 48, 0x20);

View File

@ -62,7 +62,7 @@ static void mine_ride_track_station(paint_session * session, uint8 rideIndex, ui
sub_98197C_rotated(direction, imageIds[direction][0] | gTrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, height + 3);
sub_98196C_rotated(direction, imageIds[direction][1] | gTrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height);
track_paint_util_draw_station_metal_supports_2(session, direction, height, gTrackColours[SCHEME_SUPPORTS], 0);
track_paint_util_draw_station_2(rideIndex, trackSequence, direction, height, mapElement, 9, 11);
track_paint_util_draw_station_2(session, rideIndex, trackSequence, direction, height, mapElement, 9, 11);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 32, 0x20);
@ -2095,7 +2095,7 @@ static void mine_ride_track_on_ride_photo(paint_session * session, uint8 rideInd
sub_98197C_rotated(direction, gTrackColours[SCHEME_TRACK] | 19339, 0, 0, 32, 20, 0, height, 0, 6, height + 3);
break;
}
track_paint_util_onride_photo_paint(direction, height + 3, mapElement);
track_paint_util_onride_photo_paint(session, direction, height + 3, mapElement);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 48, 0x20);

View File

@ -84,7 +84,7 @@ static void mine_train_rc_track_station(paint_session * session, uint8 rideIndex
sub_98199C_rotated(direction, imageIds[direction][0] | gTrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 0, height);
}
track_paint_util_draw_station_metal_supports_2(session, direction, height, gTrackColours[SCHEME_SUPPORTS], 3);
track_paint_util_draw_station(rideIndex, trackSequence, direction, height, mapElement);
track_paint_util_draw_station(session, rideIndex, trackSequence, direction, height, mapElement);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 32, 0x20);
@ -2874,7 +2874,7 @@ static void mine_train_rc_track_on_ride_photo(paint_session * session, uint8 rid
wooden_a_supports_paint_setup(session, 7, 0, height, gTrackColours[SCHEME_SUPPORTS], NULL);
break;
}
track_paint_util_onride_photo_paint(direction, height + 2, mapElement);
track_paint_util_onride_photo_paint(session, direction, height + 2, mapElement);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 48, 0x20);

View File

@ -95,7 +95,7 @@ static void mini_rc_track_station(paint_session * session, uint8 rideIndex, uint
}
sub_98196C_rotated(direction, imageIds[direction][2] | gTrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height);
track_paint_util_draw_station_metal_supports_2(session, direction, height, gTrackColours[SCHEME_SUPPORTS], 0);
track_paint_util_draw_station_2(rideIndex, trackSequence, direction, height, mapElement, 9, 11);
track_paint_util_draw_station_2(session, rideIndex, trackSequence, direction, height, mapElement, 9, 11);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 32, 0x20);
@ -2751,7 +2751,7 @@ static void mini_rc_track_left_quarter_turn_1_60_deg_up(paint_session * session,
sub_98197C_rotated(direction, gTrackColours[SCHEME_TRACK] | 18896, 0, 0, 28, 28, 1, height, 2, 2, height + 99);
break;
}
track_paint_util_left_quarter_turn_1_tile_tunnel(direction, height, -8, TUNNEL_7, +56, TUNNEL_8);
track_paint_util_left_quarter_turn_1_tile_tunnel(session, direction, height, -8, TUNNEL_7, +56, TUNNEL_8);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 104, 0x20);
}
@ -2777,7 +2777,7 @@ static void mini_rc_track_right_quarter_turn_1_60_deg_up(paint_session * session
sub_98197C_rotated(direction, gTrackColours[SCHEME_TRACK] | 18891, 0, 0, 28, 28, 1, height, 2, 2, height + 99);
break;
}
track_paint_util_right_quarter_turn_1_tile_tunnel(direction, height, -8, TUNNEL_7, +56, TUNNEL_8);
track_paint_util_right_quarter_turn_1_tile_tunnel(session, direction, height, -8, TUNNEL_7, +56, TUNNEL_8);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 104, 0x20);
}
@ -2923,7 +2923,7 @@ static void mini_rc_track_on_ride_photo(paint_session * session, uint8 rideIndex
sub_98197C_rotated(direction, gTrackColours[SCHEME_TRACK] | 18739, 0, 0, 32, 20, 0, height, 0, 6, height + 3);
break;
}
track_paint_util_onride_photo_paint(direction, height + 3, mapElement);
track_paint_util_onride_photo_paint(session, direction, height + 3, mapElement);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 48, 0x20);

View File

@ -85,7 +85,7 @@ static void mini_suspended_rc_track_station(paint_session * session, uint8 rideI
sub_98196C_rotated(direction, imageIds[direction][1] | gTrackColours[SCHEME_TRACK], 0, 6, 32, 20, 1, height + 24);
sub_98199C_rotated(direction, imageIds[direction][2] | gTrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 1, height + 24, 0, 2, height);
track_paint_util_draw_station_metal_supports_2(session, direction, height, gTrackColours[SCHEME_SUPPORTS], 3);
track_paint_util_draw_station_inverted(rideIndex, trackSequence, direction, height, mapElement, STATION_VARIANT_1);
track_paint_util_draw_station_inverted(session, rideIndex, trackSequence, direction, height, mapElement, STATION_VARIANT_1);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 32, 0x20);

View File

@ -108,18 +108,18 @@ static void multi_dimension_rc_track_station(paint_session * session, uint8 ride
bool hasFence;
if (direction == 0 || direction == 2) {
hasFence = track_paint_util_has_fence(EDGE_NW, position, mapElement, ride, get_current_rotation());
track_paint_util_draw_station_covers(EDGE_NW, hasFence, entranceStyle, direction, height);
track_paint_util_draw_station_covers(session, EDGE_NW, hasFence, entranceStyle, direction, height);
} else {
hasFence = track_paint_util_has_fence(EDGE_NE, position, mapElement, ride, get_current_rotation());
track_paint_util_draw_station_covers(EDGE_NE, hasFence, entranceStyle, direction, height);
track_paint_util_draw_station_covers(session, EDGE_NE, hasFence, entranceStyle, direction, height);
}
if (direction == 0 || direction == 2) {
hasFence = track_paint_util_has_fence(EDGE_SE, position, mapElement, ride, get_current_rotation());
track_paint_util_draw_station_covers(EDGE_SE, hasFence, entranceStyle, direction, height);
track_paint_util_draw_station_covers(session, EDGE_SE, hasFence, entranceStyle, direction, height);
} else {
hasFence = track_paint_util_has_fence(EDGE_SW, position, mapElement, ride, get_current_rotation());
track_paint_util_draw_station_covers(EDGE_SW, hasFence, entranceStyle, direction, height);
track_paint_util_draw_station_covers(session, EDGE_SW, hasFence, entranceStyle, direction, height);
}
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
@ -4061,7 +4061,7 @@ static void multi_dimension_rc_track_on_ride_photo(paint_session * session, uint
sub_98197C_rotated(direction, gTrackColours[SCHEME_TRACK] | 15807, 0, 0, 32, 20, 0, height, 0, 6, height + 3);
break;
}
track_paint_util_onride_photo_paint(direction, height + 3, mapElement);
track_paint_util_onride_photo_paint(session, direction, height + 3, mapElement);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 48, 0x20);
@ -4092,7 +4092,7 @@ static void multi_dimension_rc_track_on_ride_photo(paint_session * session, uint
sub_98197C_rotated(direction, gTrackColours[SCHEME_TRACK] | 26228, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24);
break;
}
track_paint_util_onride_photo_paint(direction, height + 3, mapElement);
track_paint_util_onride_photo_paint(session, direction, height + 3, mapElement);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 64, 0x20);

View File

@ -254,7 +254,7 @@ static void paint_reverse_freefall_rc_station(paint_session * session, uint8 rid
paint_util_push_tunnel_right(height, TUNNEL_6);
}
track_paint_util_draw_station_platform(ride, direction, height, 5, mapElement);
track_paint_util_draw_station_platform(session, ride, direction, height, 5, mapElement);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 32, 0x20);

View File

@ -92,7 +92,7 @@ static void reverser_rc_track_station(paint_session * session, uint8 rideIndex,
sub_98197C_rotated(direction, imageIds[direction][1] | gTrackColours[SCHEME_MISC], 0, 0, 32, 27, 2, height, 0, 2, height);
sub_98199C_rotated(direction, imageIds[direction][0] | gTrackColours[SCHEME_TRACK], 0, 0, 32, 27, 2, height, 0, 2, height);
wooden_a_supports_paint_setup(session, direction & 1, 0, height, gTrackColours[SCHEME_SUPPORTS], NULL);
track_paint_util_draw_station_2(rideIndex, trackSequence, direction, height, mapElement, 9, 11);
track_paint_util_draw_station_2(session, rideIndex, trackSequence, direction, height, mapElement, 9, 11);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 32, 0x20);

View File

@ -85,7 +85,7 @@ static void side_friction_rc_track_station(paint_session * session, uint8 rideIn
sub_98197C_rotated(direction, imageIds[direction] | gTrackColours[SCHEME_TRACK], 0, 0, 32, 27, 2, height, 0, 2, height);
wooden_a_supports_paint_setup(session, direction & 1, 0, height, gTrackColours[SCHEME_SUPPORTS], NULL);
track_paint_util_draw_station_2(rideIndex, trackSequence, direction, height, mapElement, 9, 11);
track_paint_util_draw_station_2(session, rideIndex, trackSequence, direction, height, mapElement, 9, 11);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 32, 0x20);

View File

@ -84,7 +84,7 @@ static void stand_up_rc_track_station(paint_session * session, uint8 rideIndex,
}
sub_98196C_rotated(direction, imageIds[direction][2] | gTrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height);
track_paint_util_draw_station_metal_supports_2(session, direction, height, gTrackColours[SCHEME_SUPPORTS], 0);
track_paint_util_draw_station_2(rideIndex, trackSequence, direction, height, mapElement, 9, 11);
track_paint_util_draw_station_2(session, rideIndex, trackSequence, direction, height, mapElement, 9, 11);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 32, 0x20);
@ -1907,7 +1907,7 @@ static void stand_up_rc_track_right_vertical_loop(paint_session * session, uint8
break;
}
track_paint_util_right_vertical_loop_segments(direction, trackSequence);
track_paint_util_right_vertical_loop_segments(session, direction, trackSequence);
}
/** rct2: 0x008A73B4 */
@ -3411,7 +3411,7 @@ static void stand_up_rc_track_on_ride_photo(paint_session * session, uint8 rideI
sub_98197C_rotated(direction, gTrackColours[SCHEME_TRACK] | 25230, 0, 6, 32, 20, 1, height, 0, 6, height + 3);
break;
}
track_paint_util_onride_photo_paint(direction, height + 3, mapElement);
track_paint_util_onride_photo_paint(session, direction, height + 3, mapElement);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_0);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 48, 0x20);

View File

@ -73,7 +73,7 @@ static void steeplechase_track_station(paint_session * session, uint8 rideIndex,
sub_98197C_rotated(direction, imageIds[direction][1] | gTrackColours[SCHEME_MISC], 0, 0, 32, 28, 3, height - 2, 0, 2, height);
sub_98199C_rotated(direction, imageIds[direction][0] | gTrackColours[SCHEME_TRACK], 0, 6, 32, 20, 3, height, 0, 0, height);
track_paint_util_draw_station_metal_supports_2(session, direction, height, gTrackColours[SCHEME_SUPPORTS], 3);
track_paint_util_draw_station(rideIndex, trackSequence, direction, height, mapElement);
track_paint_util_draw_station(session, rideIndex, trackSequence, direction, height, mapElement);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 32, 0x20);

View File

@ -76,7 +76,7 @@ static void suspended_swinging_rc_track_station(paint_session * session, uint8 r
sub_98197C_rotated(direction, imageIds[direction][1] | gTrackColours[SCHEME_TRACK], 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29);
sub_98199C_rotated(direction, imageIds[direction][2] | gTrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 3, height + 29, 0, 6, height + 29);
track_paint_util_draw_station_metal_supports_2(session, direction, height, gTrackColours[SCHEME_SUPPORTS], 0);
track_paint_util_draw_station_inverted(rideIndex, trackSequence, direction, height, mapElement, STATION_VARIANT_TALL);
track_paint_util_draw_station_inverted(session, rideIndex, trackSequence, direction, height, mapElement, STATION_VARIANT_TALL);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_9);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 48, 0x20);

View File

@ -425,7 +425,7 @@ static void paint_virginia_reel_station(paint_session * session, uint8 rideIndex
}
wooden_a_supports_paint_setup(session, (direction & 1), 0, height, gTrackColours[SCHEME_SUPPORTS], NULL);
track_paint_util_draw_station(rideIndex, trackSequence, direction, height, mapElement);
track_paint_util_draw_station(session, rideIndex, trackSequence, direction, height, mapElement);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 32, 0x20);
@ -436,8 +436,8 @@ static const uint8 virginia_reel_left_quarter_turn_supports[] = {5, 2, 3, 4};
/** rct2: 0x00811304 */
static void paint_virginia_reel_track_left_quarter_turn_3_tiles(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
track_paint_util_left_quarter_turn_3_tiles_paint(2, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], virginia_reel_track_pieces_flat_quarter_turn_3_tiles, get_current_rotation());
track_paint_util_left_quarter_turn_3_tiles_tunnel(height, TUNNEL_6, direction, trackSequence);
track_paint_util_left_quarter_turn_3_tiles_paint(session, 2, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], virginia_reel_track_pieces_flat_quarter_turn_3_tiles, get_current_rotation());
track_paint_util_left_quarter_turn_3_tiles_tunnel(session, height, TUNNEL_6, direction, trackSequence);
switch (trackSequence) {
case 2:
@ -465,7 +465,7 @@ static void paint_virginia_reel_track_right_quarter_turn_3_tiles(paint_session *
/** rct2: 0x00811324 */
static void paint_virginia_reel_track_left_quarter_turn_1_tile(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
track_paint_util_left_quarter_turn_1_tile_paint(2, height, 0, direction, gTrackColours[SCHEME_TRACK], virginia_reel_track_pieces_flat_quarter_turn_1_tile, get_current_rotation());
track_paint_util_left_quarter_turn_1_tile_paint(session, 2, height, 0, direction, gTrackColours[SCHEME_TRACK], virginia_reel_track_pieces_flat_quarter_turn_1_tile, get_current_rotation());
switch (direction) {
case 0:

View File

@ -207,7 +207,7 @@ static void wild_mouse_track_station(paint_session * session, uint8 rideIndex, u
sub_98199C_rotated(direction, _wild_mouse_brakes_image_ids[direction] | gTrackColours[SCHEME_TRACK], 0, 0, 32, 20, 2, height, 0, 0, height);
}
track_paint_util_draw_station_metal_supports(session, direction, height, gTrackColours[SCHEME_SUPPORTS]);
track_paint_util_draw_station(rideIndex, trackSequence, direction, height, mapElement);
track_paint_util_draw_station(session, rideIndex, trackSequence, direction, height, mapElement);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 32, 0x20);
@ -456,8 +456,8 @@ static void wild_mouse_track_right_quarter_turn_3(paint_session * session, uint8
}
};
track_paint_util_right_quarter_turn_3_tiles_paint_3(height, direction, get_current_rotation(), trackSequence, gTrackColours[SCHEME_TRACK], imageIds);
track_paint_util_right_quarter_turn_3_tiles_tunnel(height, direction, trackSequence, TUNNEL_0);
track_paint_util_right_quarter_turn_3_tiles_paint_3(session, height, direction, get_current_rotation(), trackSequence, gTrackColours[SCHEME_TRACK], imageIds);
track_paint_util_right_quarter_turn_3_tiles_tunnel(session, height, direction, trackSequence, TUNNEL_0);
switch (trackSequence) {
case 0:
@ -506,7 +506,7 @@ static void wild_mouse_track_right_quarter_turn_3_25_deg_down(paint_session * se
sbb->bb_size.x, sbb->bb_size.y, (sint8)sbb->bb_size.z, height + (sint8)sbb->offset.z, get_current_rotation());
}
track_paint_util_right_quarter_turn_3_tiles_25_deg_down_tunnel(height, direction, trackSequence, TUNNEL_2, TUNNEL_1);
track_paint_util_right_quarter_turn_3_tiles_25_deg_down_tunnel(session, height, direction, trackSequence, TUNNEL_2, TUNNEL_1);
switch (trackSequence) {
case 0:
@ -561,7 +561,7 @@ static void wild_mouse_track_right_quarter_turn_3_25_deg_up(paint_session * sess
sbb->bb_size.x, sbb->bb_size.y, (sint8)sbb->bb_size.z, height + (sint8)sbb->offset.z, get_current_rotation());
}
track_paint_util_right_quarter_turn_3_tiles_25_deg_up_tunnel(height, direction, trackSequence, TUNNEL_1, TUNNEL_2);
track_paint_util_right_quarter_turn_3_tiles_25_deg_up_tunnel(session, height, direction, trackSequence, TUNNEL_1, TUNNEL_2);
switch (trackSequence) {
case 0:
@ -624,7 +624,7 @@ static void wild_mouse_track_left_quarter_turn_1(paint_session * session, uint8
break;
}
metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, -1, height, gTrackColours[SCHEME_SUPPORTS]);
track_paint_util_left_quarter_turn_1_tile_tunnel(direction, height, 0, TUNNEL_0, 0, TUNNEL_0);
track_paint_util_left_quarter_turn_1_tile_tunnel(session, direction, height, 0, TUNNEL_0, 0, TUNNEL_0);
paint_util_set_segment_support_height(paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_D0, direction), 0xFFFF, 0);
paint_util_set_general_support_height(height + 32, 0x20);
}

View File

@ -476,7 +476,7 @@ static void wooden_rc_track_station(paint_session * session, uint8 rideIndex, ui
stationImageIds[direction][1], direction, 0, 2, 32, 27, 2, height, 0, 2, height);
}
wooden_a_supports_paint_setup(session, direction & 1, 0, height, gTrackColours[SCHEME_SUPPORTS], NULL);
track_paint_util_draw_station_2(rideIndex, trackSequence, direction, height, mapElement, 9, 11);
track_paint_util_draw_station_2(session, rideIndex, trackSequence, direction, height, mapElement, 9, 11);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 32, 0x20);
@ -795,7 +795,7 @@ static void wooden_rc_track_right_quarter_turn_5(paint_session * session, uint8
wooden_rc_track_paint_bb(&imageIds[0][direction][trackSequence], height);
wooden_rc_track_paint_bb(&imageIds[1][direction][trackSequence], height);
track_paint_util_right_quarter_turn_5_tiles_tunnel(height, direction, trackSequence, TUNNEL_6);
track_paint_util_right_quarter_turn_5_tiles_tunnel(session, height, direction, trackSequence, TUNNEL_6);
if (supportType[direction][trackSequence] != -1) {
wooden_a_supports_paint_setup(session, supportType[direction][trackSequence], 0, height, gTrackColours[SCHEME_SUPPORTS], NULL);
@ -962,7 +962,7 @@ static void wooden_rc_track_banked_right_quarter_turn_5(paint_session * session,
wooden_rc_track_paint_bb(&imageIds[0][direction][trackSequence], height);
wooden_rc_track_paint_bb(&imageIds[1][direction][trackSequence], height);
track_paint_util_right_quarter_turn_5_tiles_tunnel(height, direction, trackSequence, TUNNEL_6);
track_paint_util_right_quarter_turn_5_tiles_tunnel(session, height, direction, trackSequence, TUNNEL_6);
if (supportType[direction][trackSequence] != -1) {
wooden_a_supports_paint_setup(session, supportType[direction][trackSequence], 0, height, gTrackColours[SCHEME_SUPPORTS], NULL);
@ -2124,7 +2124,7 @@ static void wooden_rc_track_right_vertical_loop(paint_session * session, uint8 r
break;
}
track_paint_util_right_vertical_loop_segments(direction, trackSequence);
track_paint_util_right_vertical_loop_segments(session, direction, trackSequence);
}
/** rct2: 0x008AC7E8 */
@ -3796,7 +3796,7 @@ static void wooden_rc_track_left_quarter_turn_1_60_deg_up(paint_session * sessio
sub_98199C_rotated(direction, wooden_rc_get_rails_colour() | 25086, 0, 0, 28, 28, 1, height, 2, 2, height + 99);
break;
}
track_paint_util_left_quarter_turn_1_tile_tunnel(direction, height, -8, TUNNEL_7, +56, TUNNEL_8);
track_paint_util_left_quarter_turn_1_tile_tunnel(session, direction, height, -8, TUNNEL_7, +56, TUNNEL_8);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 104, 0x20);
}
@ -3830,7 +3830,7 @@ static void wooden_rc_track_right_quarter_turn_1_60_deg_up(paint_session * sessi
sub_98199C_rotated(direction, wooden_rc_get_rails_colour() | 25090, 0, 0, 28, 28, 1, height, 2, 2, height + 99);
break;
}
track_paint_util_right_quarter_turn_1_tile_tunnel(direction, height, -8, TUNNEL_7, +56, TUNNEL_8);
track_paint_util_right_quarter_turn_1_tile_tunnel(session, direction, height, -8, TUNNEL_7, +56, TUNNEL_8);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 104, 0x20);
}
@ -3962,7 +3962,7 @@ static void wooden_rc_track_on_ride_photo(paint_session * session, uint8 rideInd
break;
}
wooden_a_supports_paint_setup(session, direction & 1, 0, height, gTrackColours[SCHEME_SUPPORTS], NULL);
track_paint_util_onride_photo_small_paint(direction, height + 16, mapElement);
track_paint_util_onride_photo_small_paint(session, direction, height + 16, mapElement);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_9);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 48, 0x20);

View File

@ -158,7 +158,7 @@ static void wooden_wild_mouse_track_station(paint_session * session, uint8 rideI
sub_98197C_rotated(direction, imageIds[direction][1] | gTrackColours[SCHEME_MISC], 0, 0, 32, 28, 1, height - 2, 0, 2, height);
sub_98199C_rotated(direction, imageIds[direction][0] | gTrackColours[SCHEME_TRACK], 0, 6, 32, 20, 1, height, 0, 0, height);
wooden_a_supports_paint_setup(session, direction & 1, 0, height, gTrackColours[SCHEME_SUPPORTS], NULL);
track_paint_util_draw_station(rideIndex, trackSequence, direction, height, mapElement);
track_paint_util_draw_station(session, rideIndex, trackSequence, direction, height, mapElement);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 32, 0x20);
@ -449,8 +449,8 @@ static void wooden_wild_mouse_track_right_quarter_turn_3(paint_session * session
};
static uint8 supportType[] = { 4, 5, 2, 3 };
track_paint_util_right_quarter_turn_3_tiles_paint_4(height, direction, get_current_rotation(), trackSequence, gTrackColours[SCHEME_TRACK], imageIds);
track_paint_util_right_quarter_turn_3_tiles_tunnel(height, direction, trackSequence, TUNNEL_0);
track_paint_util_right_quarter_turn_3_tiles_paint_4(session, height, direction, get_current_rotation(), trackSequence, gTrackColours[SCHEME_TRACK], imageIds);
track_paint_util_right_quarter_turn_3_tiles_tunnel(session, height, direction, trackSequence, TUNNEL_0);
switch (trackSequence) {
case 0:
@ -501,7 +501,7 @@ static void wooden_wild_mouse_track_left_quarter_turn_1(paint_session * session,
break;
}
wooden_a_supports_paint_setup(session, supportType[direction], 0, height, gTrackColours[SCHEME_SUPPORTS], NULL);
track_paint_util_left_quarter_turn_1_tile_tunnel(direction, height, 0, TUNNEL_0, 0, TUNNEL_0);
track_paint_util_left_quarter_turn_1_tile_tunnel(session, direction, height, 0, TUNNEL_0, 0, TUNNEL_0);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 32, 0x20);
}

View File

@ -328,7 +328,7 @@ static void paint_car_ride_station(paint_session * session, uint8 rideIndex, uin
metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 7, 0, height, gTrackColours[SCHEME_SUPPORTS]);
}
track_paint_util_draw_station(rideIndex, trackSequence, direction, height, mapElement);
track_paint_util_draw_station(session, rideIndex, trackSequence, direction, height, mapElement);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 32, 0x20);
@ -337,8 +337,8 @@ static void paint_car_ride_station(paint_session * session, uint8 rideIndex, uin
/** rct2: 0x006F7378 */
static void paint_car_ride_track_right_quarter_turn_3_tiles(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
track_paint_util_right_quarter_turn_3_tiles_paint(3, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], car_ride_track_pieces_quarter_turn_3_tiles, defaultRightQuarterTurn3TilesOffsets, defaultRightQuarterTurn3TilesBoundLengths, NULL, get_current_rotation());
track_paint_util_right_quarter_turn_3_tiles_tunnel(height, direction, trackSequence, TUNNEL_0);
track_paint_util_right_quarter_turn_3_tiles_paint(session, 3, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], car_ride_track_pieces_quarter_turn_3_tiles, defaultRightQuarterTurn3TilesOffsets, defaultRightQuarterTurn3TilesBoundLengths, NULL, get_current_rotation());
track_paint_util_right_quarter_turn_3_tiles_tunnel(session, height, direction, trackSequence, TUNNEL_0);
switch (trackSequence) {
case 0:
@ -380,7 +380,7 @@ static void paint_car_ride_track_left_quarter_turn_1_tile(paint_session * sessio
metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, gTrackColours[SCHEME_SUPPORTS]);
track_paint_util_left_quarter_turn_1_tile_tunnel(direction, height, 0, TUNNEL_0, 0, TUNNEL_0);
track_paint_util_left_quarter_turn_1_tile_tunnel(session, direction, height, 0, TUNNEL_0, 0, TUNNEL_0);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 32, 0x20);
@ -403,7 +403,7 @@ static void paint_car_ride_track_spinning_tunnel(paint_session * session, uint8
sub_98196C(imageId, 6, 0, 20, 32, 1, height, get_current_rotation());
}
track_paint_util_spinning_tunnel_paint(1, height, direction, get_current_rotation());
track_paint_util_spinning_tunnel_paint(session, 1, height, direction, get_current_rotation());
if (direction == 0 || direction == 2) {
paint_util_push_tunnel_left(height, TUNNEL_0);

View File

@ -61,9 +61,9 @@ static void paint_circus_show(paint_session * session, uint8 rideIndex, uint8 tr
wooden_a_supports_paint_setup(session, (direction & 1), 0, height, gTrackColours[SCHEME_MISC], NULL);
track_paint_util_paint_floor(edges, gTrackColours[SCHEME_TRACK], height, floorSpritesCork, get_current_rotation());
track_paint_util_paint_floor(session, edges, gTrackColours[SCHEME_TRACK], height, floorSpritesCork, get_current_rotation());
track_paint_util_paint_fences(edges, position, mapElement, ride, gTrackColours[SCHEME_SUPPORTS], height, fenceSpritesRope, get_current_rotation());
track_paint_util_paint_fences(session, edges, position, mapElement, ride, gTrackColours[SCHEME_SUPPORTS], height, fenceSpritesRope, get_current_rotation());
switch (trackSequence) {
case 1: paint_circus_show_tent(session, rideIndex, direction, 32, 32, height); break;

View File

@ -75,9 +75,9 @@ static void paint_crooked_house(paint_session * session, uint8 rideIndex, uint8
wooden_a_supports_paint_setup(session, (direction & 1), 0, height, gTrackColours[SCHEME_MISC], NULL);
track_paint_util_paint_floor(edges, gTrackColours[SCHEME_TRACK], height, floorSpritesCork, get_current_rotation());
track_paint_util_paint_floor(session, edges, gTrackColours[SCHEME_TRACK], height, floorSpritesCork, get_current_rotation());
track_paint_util_paint_fences(edges, position, mapElement, ride, gTrackColours[SCHEME_MISC], height, fenceSpritesRope, get_current_rotation());
track_paint_util_paint_fences(session, edges, position, mapElement, ride, gTrackColours[SCHEME_MISC], height, fenceSpritesRope, get_current_rotation());
switch(trackSequence) {
case 3: paint_crooked_house_structure(session, direction, 32, 224, 0, height); break;

View File

@ -59,7 +59,7 @@ static void paint_dodgems(paint_session * session, uint8 rideIndex, uint8 trackS
uint32 imageId = SPR_DODGEMS_FLOOR | gTrackColours[SCHEME_SUPPORTS];
sub_98197C(imageId, 0, 0, 30, 30, 1, height, 1, 1, height, get_current_rotation());
track_paint_util_paint_fences(edges, position, mapElement, ride, gTrackColours[SCHEME_SUPPORTS], height, dodgems_fence_sprites, get_current_rotation());
track_paint_util_paint_fences(session, edges, position, mapElement, ride, gTrackColours[SCHEME_SUPPORTS], height, dodgems_fence_sprites, get_current_rotation());
switch (direction) {
case 2:

View File

@ -144,7 +144,7 @@ static void paint_ferris_wheel(paint_session * session, uint8 rideIndex, uint8 t
wooden_a_supports_paint_setup(session, direction & 1, 0, height, gTrackColours[SCHEME_MISC], NULL);
track_paint_util_paint_floor(edges, gTrackColours[SCHEME_TRACK], height, floorSpritesCork, get_current_rotation());
track_paint_util_paint_floor(session, edges, gTrackColours[SCHEME_TRACK], height, floorSpritesCork, get_current_rotation());
uint32 imageId;
uint8 rotation = get_current_rotation();

View File

@ -52,7 +52,7 @@ static void paint_flying_saucers(paint_session * session, uint8 rideIndex, uint8
uint32 imageId = SPR_FLYING_SAUCERS_FLOOR | gTrackColours[SCHEME_TRACK];
sub_98197C(imageId, 0, 0, 30, 30, 1, height, 1, 1, height, get_current_rotation());
track_paint_util_paint_fences(edges, position, mapElement, ride, gTrackColours[SCHEME_TRACK], height, flying_saucers_fence_sprites, get_current_rotation());
track_paint_util_paint_fences(session, edges, position, mapElement, ride, gTrackColours[SCHEME_TRACK], height, flying_saucers_fence_sprites, get_current_rotation());
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 48, 0x20);

View File

@ -356,7 +356,7 @@ static void paint_ghost_train_station(paint_session * session, uint8 rideIndex,
metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 7, 0, height, gTrackColours[SCHEME_SUPPORTS]);
}
track_paint_util_draw_station(rideIndex, trackSequence, direction, height, mapElement);
track_paint_util_draw_station(session, rideIndex, trackSequence, direction, height, mapElement);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 32, 0x20);
@ -365,8 +365,8 @@ static void paint_ghost_train_station(paint_session * session, uint8 rideIndex,
/** rct2: 0x00770C9C */
static void paint_ghost_train_track_right_quarter_turn_3_tiles(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
track_paint_util_right_quarter_turn_3_tiles_paint(3, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], ghost_train_track_pieces_quarter_turn_3_tiles, NULL, defaultRightQuarterTurn3TilesBoundLengths, defaultRightQuarterTurn3TilesBoundOffsets, get_current_rotation());
track_paint_util_right_quarter_turn_3_tiles_tunnel(height, direction, trackSequence, TUNNEL_0);
track_paint_util_right_quarter_turn_3_tiles_paint(session, 3, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], ghost_train_track_pieces_quarter_turn_3_tiles, NULL, defaultRightQuarterTurn3TilesBoundLengths, defaultRightQuarterTurn3TilesBoundOffsets, get_current_rotation());
track_paint_util_right_quarter_turn_3_tiles_tunnel(session, height, direction, trackSequence, TUNNEL_0);
switch (trackSequence) {
case 0:
@ -396,8 +396,8 @@ static void paint_ghost_train_track_left_quarter_turn_3_tiles(paint_session * se
/** rct2: 0x00770CAC */
static void paint_ghost_train_track_left_quarter_turn_1_tile(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
track_paint_util_left_quarter_turn_1_tile_paint(3, height, 0, direction, gTrackColours[SCHEME_TRACK], ghost_train_track_pieces_quarter_turn_1_tile, get_current_rotation());
track_paint_util_left_quarter_turn_1_tile_tunnel(direction, height, 0, TUNNEL_0, 0, TUNNEL_0);
track_paint_util_left_quarter_turn_1_tile_paint(session, 3, height, 0, direction, gTrackColours[SCHEME_TRACK], ghost_train_track_pieces_quarter_turn_1_tile, get_current_rotation());
track_paint_util_left_quarter_turn_1_tile_tunnel(session, direction, height, 0, TUNNEL_0, 0, TUNNEL_0);
metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, gTrackColours[SCHEME_SUPPORTS]);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
@ -421,7 +421,7 @@ static void paint_ghost_train_track_spinning_tunnel(paint_session * session, uin
sub_98197C(imageId, 0, 0, 20, 28, 3, height, 6, 2, height, get_current_rotation());
}
track_paint_util_spinning_tunnel_paint(3, height, direction, get_current_rotation());
track_paint_util_spinning_tunnel_paint(session, 3, height, direction, get_current_rotation());
if (direction == 0 || direction == 2) {
paint_util_push_tunnel_left(height, TUNNEL_0);

View File

@ -94,9 +94,9 @@ static void paint_haunted_house(paint_session * session, uint8 rideIndex, uint8
wooden_a_supports_paint_setup(session, (direction & 1), 0, height, gTrackColours[SCHEME_MISC], NULL);
track_paint_util_paint_floor(edges, gTrackColours[SCHEME_TRACK], height, floorSpritesCork, get_current_rotation());
track_paint_util_paint_floor(session, edges, gTrackColours[SCHEME_TRACK], height, floorSpritesCork, get_current_rotation());
track_paint_util_paint_fences(edges, position, mapElement, ride, gTrackColours[SCHEME_MISC], height, fenceSpritesRope, get_current_rotation());
track_paint_util_paint_fences(session, edges, position, mapElement, ride, gTrackColours[SCHEME_MISC], height, fenceSpritesRope, get_current_rotation());
switch (trackSequence) {
case 3: paint_haunted_house_structure(session, rideIndex, direction, 32, -32, 0, height + 3); break;

View File

@ -113,9 +113,9 @@ static void paint_merry_go_round(paint_session * session, uint8 rideIndex, uint8
wooden_a_supports_paint_setup(session, (direction & 1), 0, height, gTrackColours[SCHEME_MISC], NULL);
track_paint_util_paint_floor(edges, gTrackColours[SCHEME_TRACK], height, floorSpritesCork, get_current_rotation());
track_paint_util_paint_floor(session, edges, gTrackColours[SCHEME_TRACK], height, floorSpritesCork, get_current_rotation());
track_paint_util_paint_fences(edges, position, mapElement, ride, gTrackColours[SCHEME_MISC], height, fenceSpritesRope, get_current_rotation());
track_paint_util_paint_fences(session, edges, position, mapElement, ride, gTrackColours[SCHEME_MISC], height, fenceSpritesRope, get_current_rotation());
switch(trackSequence) {
case 1: paint_merry_go_round_structure(session, rideIndex, direction, 32, 32, height); break;

View File

@ -645,8 +645,8 @@ static void paint_mini_golf_station(paint_session * session, uint8 rideIndex, ui
sub_98197C(imageId, 10, 0, 1, 32, 7, height, 31, 0, height + 2, get_current_rotation());
}
track_paint_util_draw_station_covers(EDGE_NE, hasFence, entranceStyle, direction, height);
track_paint_util_draw_station_covers(EDGE_SW, hasSWFence, entranceStyle, direction, height);
track_paint_util_draw_station_covers(session, EDGE_NE, hasFence, entranceStyle, direction, height);
track_paint_util_draw_station_covers(session, EDGE_SW, hasSWFence, entranceStyle, direction, height);
// Was leftwards tunnel in game, seems odd
paint_util_push_tunnel_right(height, TUNNEL_6);
@ -663,8 +663,8 @@ static void paint_mini_golf_station(paint_session * session, uint8 rideIndex, ui
sub_98197C(imageId, 0, 10, 32, 1, 7, height, 0, 31, height + 2, get_current_rotation());
}
track_paint_util_draw_station_covers(EDGE_NW, hasFence, entranceStyle, direction, height);
track_paint_util_draw_station_covers(EDGE_SE, hasSEFence, entranceStyle, direction, height);
track_paint_util_draw_station_covers(session, EDGE_NW, hasFence, entranceStyle, direction, height);
track_paint_util_draw_station_covers(session, EDGE_SE, hasSEFence, entranceStyle, direction, height);
paint_util_push_tunnel_left(height, TUNNEL_6);
}
@ -680,7 +680,7 @@ static void paint_mini_golf_track_left_quarter_turn_1_tile(paint_session * sessi
{
uint32 imageId;
track_paint_util_left_quarter_turn_1_tile_paint(1, height, 0, direction, gTrackColours[SCHEME_TRACK], mini_golf_track_sprites_quarter_turn_1_tile, get_current_rotation());
track_paint_util_left_quarter_turn_1_tile_paint(session, 1, height, 0, direction, gTrackColours[SCHEME_TRACK], mini_golf_track_sprites_quarter_turn_1_tile, get_current_rotation());
metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, gTrackColours[SCHEME_SUPPORTS]);
@ -725,7 +725,7 @@ static void paint_mini_golf_track_left_quarter_turn_1_tile(paint_session * sessi
if (shouldDrawFence) {
// TODO: The back fence uses the same x/y offsets, but uses another paint function. See if this occurs more often.
track_paint_util_left_quarter_turn_1_tile_paint(0, height, 24, direction, gTrackColours[SCHEME_MISC], mini_golf_track_sprites_quarter_turn_1_tile_fence_front, get_current_rotation());
track_paint_util_left_quarter_turn_1_tile_paint(session, 0, height, 24, direction, gTrackColours[SCHEME_MISC], mini_golf_track_sprites_quarter_turn_1_tile_fence_front, get_current_rotation());
switch (direction) {
case 0:

View File

@ -50,7 +50,7 @@ static void paint_mini_helicopters_track_station(paint_session * session, uint8
paint_util_push_tunnel_right(height, TUNNEL_6);
}
track_paint_util_draw_station(rideIndex, trackSequence, direction, height, mapElement);
track_paint_util_draw_station(session, rideIndex, trackSequence, direction, height, mapElement);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 32, 0x20);
@ -212,8 +212,8 @@ static void paint_mini_helicopters_track_25_deg_down_to_flat(paint_session * ses
/** rct2: 0x0081F3E8 */
static void paint_mini_helicopters_track_left_quarter_turn_3_tiles(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
track_paint_util_left_quarter_turn_3_tiles_paint(3, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], trackSpritesSubmarineRideMiniHelicoptersQuarterTurn3Tiles, get_current_rotation());
track_paint_util_left_quarter_turn_3_tiles_tunnel(height, TUNNEL_0, direction, trackSequence);
track_paint_util_left_quarter_turn_3_tiles_paint(session, 3, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], trackSpritesSubmarineRideMiniHelicoptersQuarterTurn3Tiles, get_current_rotation());
track_paint_util_left_quarter_turn_3_tiles_tunnel(session, height, TUNNEL_0, direction, trackSequence);
switch (trackSequence) {
case 0:
@ -244,8 +244,8 @@ static void paint_mini_helicopters_track_right_quarter_turn_3_tiles(paint_sessio
/** rct2: 0x0081F408 */
static void paint_mini_helicopters_track_left_quarter_turn_1_tile(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
track_paint_util_left_quarter_turn_1_tile_paint(1, height, 0, direction, gTrackColours[SCHEME_TRACK], trackSpritesSubmarineRideMiniHelicoptersQuarterTurn1Tile, get_current_rotation());
track_paint_util_left_quarter_turn_1_tile_tunnel(direction, height, 0, TUNNEL_0, 0, TUNNEL_0);
track_paint_util_left_quarter_turn_1_tile_paint(session, 1, height, 0, direction, gTrackColours[SCHEME_TRACK], trackSpritesSubmarineRideMiniHelicoptersQuarterTurn1Tile, get_current_rotation());
track_paint_util_left_quarter_turn_1_tile_tunnel(session, direction, height, 0, TUNNEL_0, 0, TUNNEL_0);
paint_util_set_segment_support_height(paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C8 | SEGMENT_C4 | SEGMENT_D0, direction), 0xFFFF, 0);
paint_util_set_general_support_height(height + 32, 0x20);

View File

@ -228,7 +228,7 @@ static void paint_monorail_cycles_station(paint_session * session, uint8 rideInd
paint_util_push_tunnel_right(height, TUNNEL_6);
}
track_paint_util_draw_station(rideIndex, trackSequence, direction, height, mapElement);
track_paint_util_draw_station(session, rideIndex, trackSequence, direction, height, mapElement);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 32, 0x20);
@ -237,8 +237,8 @@ static void paint_monorail_cycles_station(paint_session * session, uint8 rideInd
/** rct2: 0x0088AD88 */
static void paint_monorail_cycles_track_left_quarter_turn_3_tiles(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
track_paint_util_left_quarter_turn_3_tiles_paint(3, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], monorail_cycles_track_pieces_flat_quarter_turn_3_tiles, get_current_rotation());
track_paint_util_left_quarter_turn_3_tiles_tunnel(height, TUNNEL_0, direction, trackSequence);
track_paint_util_left_quarter_turn_3_tiles_paint(session, 3, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], monorail_cycles_track_pieces_flat_quarter_turn_3_tiles, get_current_rotation());
track_paint_util_left_quarter_turn_3_tiles_tunnel(session, height, TUNNEL_0, direction, trackSequence);
switch (trackSequence) {
case 0:
@ -283,7 +283,7 @@ static const sint8 monorail_cycles_track_right_quarter_turn_5_tiles_support_spec
/** rct2: 0x0088ADB8 */
static void paint_monorail_cycles_track_right_quarter_turn_5_tiles(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
track_paint_util_right_quarter_turn_5_tiles_paint(1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], monorail_cycles_track_pieces_flat_quarter_turn_5_tiles, NULL, defaultRightQuarterTurn5TilesBoundLengths, defaultRightQuarterTurn5TilesBoundOffsets, get_current_rotation());
track_paint_util_right_quarter_turn_5_tiles_paint(session, 1, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], monorail_cycles_track_pieces_flat_quarter_turn_5_tiles, NULL, defaultRightQuarterTurn5TilesBoundLengths, defaultRightQuarterTurn5TilesBoundOffsets, get_current_rotation());
sint32 supportHeight = height + monorail_cycles_track_right_quarter_turn_5_tiles_support_height_offset[direction][trackSequence];
sint32 supportSpecial = monorail_cycles_track_right_quarter_turn_5_tiles_support_special[direction][trackSequence];

View File

@ -82,7 +82,7 @@ static void paint_observation_tower_base(paint_session * session, uint8 rideInde
uint32 imageId = SPR_FLOOR_METAL_B | gTrackColours[SCHEME_SUPPORTS];
sub_98197C(imageId, 0, 0, 32, 32, 1, height, 0, 0, height, get_current_rotation());
track_paint_util_paint_fences(edges, position, mapElement, ride, gTrackColours[SCHEME_TRACK], height, fenceSpritesMetalB, get_current_rotation());
track_paint_util_paint_fences(session, edges, position, mapElement, ride, gTrackColours[SCHEME_TRACK], height, fenceSpritesMetalB, get_current_rotation());
if (trackSequence == 0) {
imageId = SPR_OBSERVATION_TOWER_SEGMENT_BASE | gTrackColours[SCHEME_TRACK];

View File

@ -96,7 +96,7 @@ static void paint_space_rings(paint_session * session, uint8 rideIndex, uint8 tr
wooden_a_supports_paint_setup(session, (direction & 1), 0, height, gTrackColours[SCHEME_MISC], NULL);
track_paint_util_paint_floor(edges, gTrackColours[SCHEME_TRACK], height, floorSpritesCork, get_current_rotation());
track_paint_util_paint_floor(session, edges, gTrackColours[SCHEME_TRACK], height, floorSpritesCork, get_current_rotation());
switch (trackSequence) {
case 7:
@ -110,7 +110,7 @@ static void paint_space_rings(paint_session * session, uint8 rideIndex, uint8 tr
}
break;
default:
track_paint_util_paint_fences(edges, position, mapElement, ride, gTrackColours[SCHEME_MISC], height, space_rings_fence_sprites, get_current_rotation());
track_paint_util_paint_fences(session, edges, position, mapElement, ride, gTrackColours[SCHEME_MISC], height, space_rings_fence_sprites, get_current_rotation());
break;
}

View File

@ -174,7 +174,7 @@ static void paint_spiral_slide(paint_session * session, uint8 rideIndex, uint8 t
uint32 imageId = ((direction & 1) ? SPIRAL_SLIDE_BASE_B : SPIRAL_SLIDE_BASE_A) | gTrackColours[SCHEME_SUPPORTS];
sub_98197C(imageId, 0, 0, 32, 32, 1, height, 0, 0, height, get_current_rotation());
track_paint_util_paint_fences(edges, position, mapElement, ride, gTrackColours[SCHEME_TRACK], height, spiral_slide_fence_sprites, get_current_rotation());
track_paint_util_paint_fences(session, edges, position, mapElement, ride, gTrackColours[SCHEME_TRACK], height, spiral_slide_fence_sprites, get_current_rotation());
switch (trackSequence) {
case 1: spiral_slide_paint_tile_right(session, rideIndex, trackSequence, direction, height, mapElement); break;

View File

@ -62,9 +62,9 @@ static void paint_3d_cinema(paint_session * session, uint8 rideIndex, uint8 trac
wooden_a_supports_paint_setup(session, (direction & 1), 0, height, gTrackColours[SCHEME_MISC], NULL);
track_paint_util_paint_floor(edges, gTrackColours[SCHEME_TRACK], height, floorSpritesCork, get_current_rotation());
track_paint_util_paint_floor(session, edges, gTrackColours[SCHEME_TRACK], height, floorSpritesCork, get_current_rotation());
track_paint_util_paint_fences(edges, position, mapElement, ride, gTrackColours[SCHEME_MISC], height, fenceSpritesRope, get_current_rotation());
track_paint_util_paint_fences(session, edges, position, mapElement, ride, gTrackColours[SCHEME_MISC], height, fenceSpritesRope, get_current_rotation());
switch(trackSequence) {

View File

@ -85,9 +85,9 @@ static void paint_enterprise(paint_session * session, uint8 rideIndex, uint8 tra
wooden_a_supports_paint_setup(session, direction & 1, 0, height, gTrackColours[SCHEME_MISC], NULL);
track_paint_util_paint_floor(edges, gTrackColours[SCHEME_TRACK], height, floorSpritesCork, get_current_rotation());
track_paint_util_paint_floor(session, edges, gTrackColours[SCHEME_TRACK], height, floorSpritesCork, get_current_rotation());
track_paint_util_paint_fences(edges, position, mapElement, ride, gTrackColours[SCHEME_TRACK], height, fenceSpritesRope, get_current_rotation());
track_paint_util_paint_fences(session, edges, position, mapElement, ride, gTrackColours[SCHEME_TRACK], height, fenceSpritesRope, get_current_rotation());
switch (trackSequence) {
case 5: paint_enterprise_structure(session, ride, 16, 16, height, mapElement); break;

View File

@ -335,10 +335,10 @@ static void paint_go_karts_station(paint_session * session, uint8 rideIndex, uin
if (direction == 0 || direction == 2) {
hasFence = track_paint_util_has_fence(EDGE_NW, position, mapElement, ride, get_current_rotation());
track_paint_util_draw_station_covers(EDGE_NW, hasFence, entranceStyle, direction, height);
track_paint_util_draw_station_covers(session, EDGE_NW, hasFence, entranceStyle, direction, height);
} else {
hasFence = track_paint_util_has_fence(EDGE_NE, position, mapElement, ride, get_current_rotation());
track_paint_util_draw_station_covers(EDGE_NE, hasFence, entranceStyle, direction, height);
track_paint_util_draw_station_covers(session, EDGE_NE, hasFence, entranceStyle, direction, height);
}
imageId = sprites[direction][1] | gTrackColours[SCHEME_TRACK];
@ -354,10 +354,10 @@ static void paint_go_karts_station(paint_session * session, uint8 rideIndex, uin
if (direction == 0 || direction == 2) {
hasFence = track_paint_util_has_fence(EDGE_SE, position, mapElement, ride, get_current_rotation());
track_paint_util_draw_station_covers(EDGE_SE, hasFence, entranceStyle, direction, height);
track_paint_util_draw_station_covers(session, EDGE_SE, hasFence, entranceStyle, direction, height);
} else {
hasFence = track_paint_util_has_fence(EDGE_SW, position, mapElement, ride, get_current_rotation());
track_paint_util_draw_station_covers(EDGE_SW, hasFence, entranceStyle, direction, height);
track_paint_util_draw_station_covers(session, EDGE_SW, hasFence, entranceStyle, direction, height);
}
if (mapElement->properties.track.type == TRACK_ELEM_END_STATION) {

View File

@ -97,7 +97,7 @@ static void paint_launched_freefall_base(paint_session * session, uint8 rideInde
uint32 imageId = SPR_FLOOR_METAL | gTrackColours[SCHEME_SUPPORTS];
sub_98197C(imageId, 0, 0, 32, 32, 1, height, 0, 0, height, get_current_rotation());
track_paint_util_paint_fences(edges, position, mapElement, ride, gTrackColours[SCHEME_TRACK], height, launched_freefall_fence_sprites, get_current_rotation());
track_paint_util_paint_fences(session, edges, position, mapElement, ride, gTrackColours[SCHEME_TRACK], height, launched_freefall_fence_sprites, get_current_rotation());
if (trackSequence == 0) {
imageId = SPR_LAUNCHED_FREEFALL_TOWER_BASE | gTrackColours[SCHEME_TRACK];

View File

@ -132,8 +132,8 @@ static void paint_motionsimulator(paint_session * session, uint8 rideIndex, uint
rct_xy16 position = { session->MapPosition.x, session->MapPosition.y };
wooden_a_supports_paint_setup(session, (direction & 1), 0, height, gTrackColours[SCHEME_MISC], NULL);
track_paint_util_paint_floor(edges, gTrackColours[SCHEME_TRACK], height, floorSpritesCork, get_current_rotation());
track_paint_util_paint_fences(edges, position, mapElement, ride, gTrackColours[SCHEME_SUPPORTS], height, fenceSpritesRope, get_current_rotation());
track_paint_util_paint_floor(session, edges, gTrackColours[SCHEME_TRACK], height, floorSpritesCork, get_current_rotation());
track_paint_util_paint_fences(session, edges, position, mapElement, ride, gTrackColours[SCHEME_SUPPORTS], height, fenceSpritesRope, get_current_rotation());
switch (trackSequence) {
case 1: paint_motionsimulator_vehicle(session, 16, -16, direction, height, mapElement); break;

View File

@ -97,7 +97,7 @@ static void paint_roto_drop_base(paint_session * session, uint8 rideIndex, uint8
uint32 imageId = SPR_FLOOR_METAL_B | gTrackColours[SCHEME_SUPPORTS];
sub_98197C(imageId, 0, 0, 32, 32, 1, height, 0, 0, height, get_current_rotation());
track_paint_util_paint_fences(edges, position, mapElement, ride, gTrackColours[SCHEME_TRACK], height, fenceSpritesMetalB, get_current_rotation());
track_paint_util_paint_fences(session, edges, position, mapElement, ride, gTrackColours[SCHEME_TRACK], height, fenceSpritesMetalB, get_current_rotation());
if (trackSequence == 0) {
imageId = (direction & 1 ? SPR_ROTO_DROP_TOWER_BASE_90_DEG : SPR_ROTO_DROP_TOWER_BASE) | gTrackColours[SCHEME_TRACK];

View File

@ -235,9 +235,9 @@ static void paint_top_spin(paint_session * session, uint8 rideIndex, uint8 track
wooden_a_supports_paint_setup(session, direction & 1, 0, height, gTrackColours[SCHEME_MISC], NULL);
track_paint_util_paint_floor(edges, gTrackColours[SCHEME_TRACK], height, floorSpritesCork, get_current_rotation());
track_paint_util_paint_floor(session, edges, gTrackColours[SCHEME_TRACK], height, floorSpritesCork, get_current_rotation());
track_paint_util_paint_fences(edges, position, mapElement, ride, gTrackColours[SCHEME_MISC], height, fenceSpritesRope, get_current_rotation());
track_paint_util_paint_fences(session, edges, position, mapElement, ride, gTrackColours[SCHEME_MISC], height, fenceSpritesRope, get_current_rotation());
switch (trackSequence) {
case 1: top_spin_paint_vehicle(session, 32, 32, rideIndex, direction, height, mapElement); break;

View File

@ -91,7 +91,7 @@ static void paint_twist(paint_session * session, uint8 rideIndex, uint8 trackSeq
wooden_a_supports_paint_setup(session, (direction & 1), 0, height, gTrackColours[SCHEME_MISC], NULL);
track_paint_util_paint_floor(edges, gTrackColours[SCHEME_MISC], height, floorSpritesCork, get_current_rotation());
track_paint_util_paint_floor(session, edges, gTrackColours[SCHEME_MISC], height, floorSpritesCork, get_current_rotation());
switch (trackSequence) {
case 7:
@ -105,7 +105,7 @@ static void paint_twist(paint_session * session, uint8 rideIndex, uint8 trackSeq
}
break;
default:
track_paint_util_paint_fences(edges, position, mapElement, ride, gTrackColours[SCHEME_MISC], height, fenceSpritesRope, get_current_rotation());
track_paint_util_paint_fences(session, edges, position, mapElement, ride, gTrackColours[SCHEME_MISC], height, fenceSpritesRope, get_current_rotation());
break;
}

View File

@ -230,7 +230,7 @@ bool track_paint_util_has_fence(enum edge_t edge, rct_xy16 position, rct_map_ele
return (ride->entrances[entranceId].xy != entranceLoc && ride->exits[entranceId].xy != entranceLoc);
}
void track_paint_util_paint_floor(uint8 edges, uint32 colourFlags, uint16 height, const uint32 floorSprites[4], uint8 rotation)
void track_paint_util_paint_floor(paint_session * session, uint8 edges, uint32 colourFlags, uint16 height, const uint32 floorSprites[4], uint8 rotation)
{
uint32 imageId;
@ -247,7 +247,7 @@ void track_paint_util_paint_floor(uint8 edges, uint32 colourFlags, uint16 height
sub_98197C(imageId | colourFlags, 0, 0, 32, 32, 1, height, 0, 0, height, rotation);
}
void track_paint_util_paint_fences(uint8 edges, rct_xy16 position, rct_map_element * mapElement, rct_ride * ride, uint32 colourFlags, uint16 height, const uint32 fenceSprites[4], uint8 rotation)
void track_paint_util_paint_fences(paint_session * session, uint8 edges, rct_xy16 position, rct_map_element * mapElement, rct_ride * ride, uint32 colourFlags, uint16 height, const uint32 fenceSprites[4], uint8 rotation)
{
uint32 imageId;
@ -281,26 +281,26 @@ bool track_paint_util_should_paint_supports(rct_xy16 position)
return false;
}
void track_paint_util_draw_station_impl(uint8 rideIndex, uint8 trackSequence, uint8 direction, uint16 height, uint16 coverHeight, rct_map_element * mapElement, sint32 fenceOffsetA, sint32 fenceOffsetB);
void track_paint_util_draw_station_impl(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, uint16 height, uint16 coverHeight, rct_map_element * mapElement, sint32 fenceOffsetA, sint32 fenceOffsetB);
void track_paint_util_draw_station(uint8 rideIndex, uint8 trackSequence, uint8 direction, uint16 height, rct_map_element * mapElement)
void track_paint_util_draw_station(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, uint16 height, rct_map_element * mapElement)
{
track_paint_util_draw_station_impl(rideIndex, trackSequence, direction, height, height, mapElement, 5, 7);
track_paint_util_draw_station_impl(session, rideIndex, trackSequence, direction, height, height, mapElement, 5, 7);
}
void track_paint_util_draw_station_2(uint8 rideIndex, uint8 trackSequence, uint8 direction, uint16 height, rct_map_element * mapElement, sint32 fenceOffsetA, sint32 fenceOffsetB)
void track_paint_util_draw_station_2(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, uint16 height, rct_map_element * mapElement, sint32 fenceOffsetA, sint32 fenceOffsetB)
{
track_paint_util_draw_station_impl(rideIndex, trackSequence, direction, height, height, mapElement, fenceOffsetA, fenceOffsetB);
track_paint_util_draw_station_impl(session, rideIndex, trackSequence, direction, height, height, mapElement, fenceOffsetA, fenceOffsetB);
}
void track_paint_util_draw_station_3(uint8 rideIndex, uint8 trackSequence, uint8 direction, uint16 height, uint16 coverHeight, rct_map_element * mapElement)
void track_paint_util_draw_station_3(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, uint16 height, uint16 coverHeight, rct_map_element * mapElement)
{
track_paint_util_draw_station_impl(rideIndex, trackSequence, direction, height, coverHeight, mapElement, 5, 7);
track_paint_util_draw_station_impl(session, rideIndex, trackSequence, direction, height, coverHeight, mapElement, 5, 7);
}
void track_paint_util_draw_station_impl(uint8 rideIndex, uint8 trackSequence, uint8 direction, uint16 height, uint16 coverHeight, rct_map_element * mapElement, sint32 fenceOffsetA, sint32 fenceOffsetB)
void track_paint_util_draw_station_impl(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, uint16 height, uint16 coverHeight, rct_map_element * mapElement, sint32 fenceOffsetA, sint32 fenceOffsetB)
{
rct_xy16 position = gPaintSession.MapPosition;
rct_xy16 position = session->MapPosition;
rct_ride * ride = get_ride(rideIndex);
const rct_ride_entrance_definition * entranceStyle = &RideEntranceDefinitions[ride->entrance_style];
const bool hasGreenLight = map_element_get_green_light(mapElement);
@ -325,7 +325,7 @@ void track_paint_util_draw_station_impl(uint8 rideIndex, uint8 trackSequence, ui
}
sub_98196C(imageId, 0, 0, 32, 8, 1, height + fenceOffsetA, get_current_rotation());
//height -= 5 (height)
track_paint_util_draw_station_covers(EDGE_NW, hasFence, entranceStyle, direction, coverHeight);
track_paint_util_draw_station_covers(session, EDGE_NW, hasFence, entranceStyle, direction, coverHeight);
//height += 5 (height + 5)
if (mapElement->properties.track.type == TRACK_ELEM_END_STATION && direction == 0) {
@ -358,7 +358,7 @@ void track_paint_util_draw_station_impl(uint8 rideIndex, uint8 trackSequence, ui
sub_98196C(imageId, 31, 23, 1, 8, 7, height + fenceOffsetB, get_current_rotation());
}
//height -= 7 (height)
track_paint_util_draw_station_covers(EDGE_SE, hasFence, entranceStyle, direction, coverHeight);
track_paint_util_draw_station_covers(session, EDGE_SE, hasFence, entranceStyle, direction, coverHeight);
//height += 7 (height + 7)
if (mapElement->properties.track.type == TRACK_ELEM_BEGIN_STATION && direction == 0) {
@ -385,7 +385,7 @@ void track_paint_util_draw_station_impl(uint8 rideIndex, uint8 trackSequence, ui
}
sub_98196C(imageId, 0, 0, 8, 32, 1, height + fenceOffsetA, get_current_rotation());
//height -= 5 (height)
track_paint_util_draw_station_covers(EDGE_NE, hasFence, entranceStyle, direction, coverHeight);
track_paint_util_draw_station_covers(session, EDGE_NE, hasFence, entranceStyle, direction, coverHeight);
//height += 5 (height + 5)
if (mapElement->properties.track.type == TRACK_ELEM_END_STATION && direction == 3) {
@ -419,7 +419,7 @@ void track_paint_util_draw_station_impl(uint8 rideIndex, uint8 trackSequence, ui
}
//height -= 7 (height)
track_paint_util_draw_station_covers(EDGE_SW, hasFence, entranceStyle, direction, coverHeight);
track_paint_util_draw_station_covers(session, EDGE_SW, hasFence, entranceStyle, direction, coverHeight);
//height += 7 (height + 7)
if (mapElement->properties.track.type == TRACK_ELEM_BEGIN_STATION && direction == 3) {
@ -432,9 +432,9 @@ void track_paint_util_draw_station_impl(uint8 rideIndex, uint8 trackSequence, ui
}
}
void track_paint_util_draw_station_inverted(uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement, uint8 stationVariant)
void track_paint_util_draw_station_inverted(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement, uint8 stationVariant)
{
rct_xy16 position = gPaintSession.MapPosition;
rct_xy16 position = session->MapPosition;
rct_ride * ride = get_ride(rideIndex);
const rct_ride_entrance_definition * entranceStyle = &RideEntranceDefinitions[ride->entrance_style];
const bool hasGreenLight = map_element_get_green_light(mapElement);
@ -459,7 +459,7 @@ void track_paint_util_draw_station_inverted(uint8 rideIndex, uint8 trackSequence
}
sub_98196C(imageId, 0, 0, 32, 8, 1, height + 6, get_current_rotation());
//height -= 5 (height)
track_paint_util_draw_station_covers_2(EDGE_NW, hasFence, entranceStyle, direction, height, stationVariant);
track_paint_util_draw_station_covers_2(session, EDGE_NW, hasFence, entranceStyle, direction, height, stationVariant);
//height += 5 (height + 5)
if (mapElement->properties.track.type == TRACK_ELEM_END_STATION && direction == 0) {
@ -492,7 +492,7 @@ void track_paint_util_draw_station_inverted(uint8 rideIndex, uint8 trackSequence
sub_98196C(imageId, 31, 23, 1, 8, 7, height + 8, get_current_rotation());
}
//height -= 7 (height)
track_paint_util_draw_station_covers_2(EDGE_SE, hasFence, entranceStyle, direction, height, stationVariant);
track_paint_util_draw_station_covers_2(session, EDGE_SE, hasFence, entranceStyle, direction, height, stationVariant);
//height += 7 (height + 7)
if (mapElement->properties.track.type == TRACK_ELEM_BEGIN_STATION && direction == 0) {
@ -519,7 +519,7 @@ void track_paint_util_draw_station_inverted(uint8 rideIndex, uint8 trackSequence
}
sub_98196C(imageId, 0, 0, 8, 32, 1, height + 6, get_current_rotation());
//height -= 5 (height)
track_paint_util_draw_station_covers_2(EDGE_NE, hasFence, entranceStyle, direction, height, stationVariant);
track_paint_util_draw_station_covers_2(session, EDGE_NE, hasFence, entranceStyle, direction, height, stationVariant);
//height += 5 (height + 5)
if (mapElement->properties.track.type == TRACK_ELEM_END_STATION && direction == 3) {
@ -553,7 +553,7 @@ void track_paint_util_draw_station_inverted(uint8 rideIndex, uint8 trackSequence
}
//height -= 7 (height)
track_paint_util_draw_station_covers_2(EDGE_SW, hasFence, entranceStyle, direction, height, stationVariant);
track_paint_util_draw_station_covers_2(session, EDGE_SW, hasFence, entranceStyle, direction, height, stationVariant);
//height += 7 (height + 7)
if (mapElement->properties.track.type == TRACK_ELEM_BEGIN_STATION && direction == 3) {
@ -566,14 +566,14 @@ void track_paint_util_draw_station_inverted(uint8 rideIndex, uint8 trackSequence
}
}
bool track_paint_util_draw_station_covers(enum edge_t edge, bool hasFence, const rct_ride_entrance_definition * entranceStyle, uint8 direction, uint16 height)
bool track_paint_util_draw_station_covers(paint_session * session, enum edge_t edge, bool hasFence, const rct_ride_entrance_definition * entranceStyle, uint8 direction, uint16 height)
{
return track_paint_util_draw_station_covers_2(edge, hasFence, entranceStyle, direction, height, STATION_VARIANT_BASIC);
return track_paint_util_draw_station_covers_2(session, edge, hasFence, entranceStyle, direction, height, STATION_VARIANT_BASIC);
}
bool track_paint_util_draw_station_covers_2(enum edge_t edge, bool hasFence, const rct_ride_entrance_definition * entranceStyle, uint8 direction, uint16 height, uint8 stationVariant)
bool track_paint_util_draw_station_covers_2(paint_session * session, enum edge_t edge, bool hasFence, const rct_ride_entrance_definition * entranceStyle, uint8 direction, uint16 height, uint8 stationVariant)
{
if (!(gPaintSession.Unk141E9DB & (G141E9DB_FLAG_1 | G141E9DB_FLAG_2))) {
if (!(session->Unk141E9DB & (G141E9DB_FLAG_1 | G141E9DB_FLAG_2))) {
return false;
}
@ -641,15 +641,15 @@ bool track_paint_util_draw_station_covers_2(enum edge_t edge, bool hasFence, con
return true;
}
void track_paint_util_draw_station_platform(rct_ride *ride, uint8 direction, sint32 height, sint32 zOffset, rct_map_element * mapElement)
void track_paint_util_draw_station_platform(paint_session * session, rct_ride *ride, uint8 direction, sint32 height, sint32 zOffset, rct_map_element * mapElement)
{
rct_xy16 position = gPaintSession.MapPosition;
rct_xy16 position = session->MapPosition;
const rct_ride_entrance_definition * entranceStyle = &RideEntranceDefinitions[ride->entrance_style];
if (direction & 1) {
bool hasFence = track_paint_util_has_fence(EDGE_NE, position, mapElement, ride, get_current_rotation());
uint32 imageId = (hasFence ? SPR_STATION_NARROW_EDGE_FENCED_NE : SPR_STATION_NARROW_EDGE_NE) | gTrackColours[SCHEME_SUPPORTS];
sub_98196C(imageId, 0, 0, 8, 32, 1, height + zOffset, get_current_rotation());
track_paint_util_draw_station_covers(EDGE_NE, hasFence, entranceStyle, direction, height);
track_paint_util_draw_station_covers(session, EDGE_NE, hasFence, entranceStyle, direction, height);
imageId = SPR_STATION_NARROW_EDGE_SW | gTrackColours[SCHEME_SUPPORTS];
sub_98196C(imageId, 24, 0, 8, 32, 1, height + zOffset, get_current_rotation());
@ -659,12 +659,12 @@ void track_paint_util_draw_station_platform(rct_ride *ride, uint8 direction, sin
imageId = SPR_STATION_FENCE_NW_SE | gTrackColours[SCHEME_SUPPORTS];
sub_98196C(imageId, 31, 0, 1, 32, 7, height + zOffset + 2, get_current_rotation());
}
track_paint_util_draw_station_covers(EDGE_SW, hasFence, entranceStyle, direction, height);
track_paint_util_draw_station_covers(session, EDGE_SW, hasFence, entranceStyle, direction, height);
} else {
bool hasFence = track_paint_util_has_fence(EDGE_NW, position, mapElement, ride, get_current_rotation());
uint32 imageId = (hasFence ? SPR_STATION_NARROW_EDGE_FENCED_NW : SPR_STATION_NARROW_EDGE_NW) | gTrackColours[SCHEME_SUPPORTS];
sub_98196C(imageId, 0, 0, 32, 8, 1, height + zOffset, get_current_rotation());
track_paint_util_draw_station_covers(EDGE_NW, hasFence, entranceStyle, direction, height);
track_paint_util_draw_station_covers(session, EDGE_NW, hasFence, entranceStyle, direction, height);
imageId = SPR_STATION_NARROW_EDGE_SE | gTrackColours[SCHEME_SUPPORTS];
sub_98196C(imageId, 0, 24, 32, 8, 1, height + zOffset, get_current_rotation());
@ -674,11 +674,11 @@ void track_paint_util_draw_station_platform(rct_ride *ride, uint8 direction, sin
imageId = SPR_STATION_FENCE_SW_NE | gTrackColours[SCHEME_SUPPORTS];
sub_98196C(imageId, 0, 31, 32, 1, 7, height + zOffset + 2, get_current_rotation());
}
track_paint_util_draw_station_covers(EDGE_SE, hasFence, entranceStyle, direction, height);
track_paint_util_draw_station_covers(session, EDGE_SE, hasFence, entranceStyle, direction, height);
}
}
void track_paint_util_draw_pier(rct_ride * ride, const rct_ride_entrance_definition * entranceStyle, rct_xy16 position, uint8 direction, sint32 height, rct_map_element * mapElement, uint8 rotation)
void track_paint_util_draw_pier(paint_session * session, rct_ride * ride, const rct_ride_entrance_definition * entranceStyle, rct_xy16 position, uint8 direction, sint32 height, rct_map_element * mapElement, uint8 rotation)
{
bool hasFence;
uint32 imageId;
@ -687,7 +687,7 @@ void track_paint_util_draw_pier(rct_ride * ride, const rct_ride_entrance_definit
hasFence = track_paint_util_has_fence(EDGE_NE, position, mapElement, ride, get_current_rotation());
imageId = (hasFence ? SPR_STATION_PIER_EDGE_NE_FENCED : SPR_STATION_PIER_EDGE_NE) | gTrackColours[SCHEME_SUPPORTS];
sub_98197C(imageId, 0, 0, 6, 32, 1, height, 2, 0, height, get_current_rotation());
track_paint_util_draw_station_covers(EDGE_NE, hasFence, entranceStyle, direction, height);
track_paint_util_draw_station_covers(session, EDGE_NE, hasFence, entranceStyle, direction, height);
imageId = SPR_STATION_PIER_EDGE_SW | gTrackColours[SCHEME_SUPPORTS];
sub_98196C(imageId, 24, 0, 8, 32, 1, height, get_current_rotation());
@ -697,12 +697,12 @@ void track_paint_util_draw_pier(rct_ride * ride, const rct_ride_entrance_definit
imageId = SPR_STATION_PIER_FENCE_SW | gTrackColours[SCHEME_SUPPORTS];
sub_98196C(imageId, 31, 0, 1, 32, 7, height + 2, get_current_rotation());
}
track_paint_util_draw_station_covers(EDGE_SW, hasFence, entranceStyle, direction, height);
track_paint_util_draw_station_covers(session, EDGE_SW, hasFence, entranceStyle, direction, height);
} else {
hasFence = track_paint_util_has_fence(EDGE_NW, position, mapElement, ride, rotation);
imageId = (hasFence ? SPR_STATION_PIER_EDGE_NW_FENCED : SPR_STATION_PIER_EDGE_NW) | gTrackColours[SCHEME_SUPPORTS];
sub_98197C(imageId, 0, 0, 32, 6, 1, height, 0, 2, height, rotation);
track_paint_util_draw_station_covers(EDGE_NW, hasFence, entranceStyle, direction, height);
track_paint_util_draw_station_covers(session, EDGE_NW, hasFence, entranceStyle, direction, height);
imageId = SPR_STATION_PIER_EDGE_SE | gTrackColours[SCHEME_SUPPORTS];
sub_98196C(imageId, 0, 24, 32, 8, 1, height, rotation);
@ -712,7 +712,7 @@ void track_paint_util_draw_pier(rct_ride * ride, const rct_ride_entrance_definit
imageId = SPR_STATION_PIER_FENCE_SE | gTrackColours[SCHEME_SUPPORTS];
sub_98196C(imageId, 0, 31, 32, 1, 7, height + 2, rotation);
}
track_paint_util_draw_station_covers(EDGE_SE, hasFence, entranceStyle, direction, height);
track_paint_util_draw_station_covers(session, EDGE_SE, hasFence, entranceStyle, direction, height);
}
}
@ -780,7 +780,7 @@ const rct_xyz16 defaultRightHelixUpSmallQuarterBoundOffsets[4][3][2] = {
static const sint8 right_helix_up_small_quarter_tiles_sprite_map[] = {0, -1, 1, 2};
void track_paint_util_right_helix_up_small_quarter_tiles_paint(const sint8 thickness[2], sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][3][2], const rct_xy16 offsets[4][3][2], const rct_xy16 boundsLengths[4][3][2], const rct_xyz16 boundsOffsets[4][3][2], uint8 rotation)
void track_paint_util_right_helix_up_small_quarter_tiles_paint(paint_session * session, const sint8 thickness[2], sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][3][2], const rct_xy16 offsets[4][3][2], const rct_xy16 boundsLengths[4][3][2], const rct_xyz16 boundsOffsets[4][3][2], uint8 rotation)
{
sint32 index = right_helix_up_small_quarter_tiles_sprite_map[trackSequence];
if (index < 0) {
@ -868,7 +868,7 @@ const rct_xy16 defaultRightHelixUpLargeQuarterBoundLengths[4][5][2] = {
};
static const sint8 right_helix_up_large_quarter_sprite_map[] = {0, -1, 1, 2, -1, 3, 4};
void track_paint_util_right_helix_up_large_quarter_tiles_paint(const sint8 thickness[2], sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][5][2], const rct_xy16 offsets[4][5][2], const rct_xy16 boundsLengths[4][5][2], const rct_xyz16 boundsOffsets[4][5][2], uint8 rotation)
void track_paint_util_right_helix_up_large_quarter_tiles_paint(paint_session * session, const sint8 thickness[2], sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][5][2], const rct_xy16 offsets[4][5][2], const rct_xy16 boundsLengths[4][5][2], const rct_xyz16 boundsOffsets[4][5][2], uint8 rotation)
{
sint32 index = right_helix_up_large_quarter_sprite_map[trackSequence];
if (index < 0) {
@ -1031,7 +1031,7 @@ const sint8 defaultEighthToDiagThickness[4][4] = {
const uint8 mapLeftEighthTurnToOrthogonal[] = { 4, 2, 3, 1, 0 };
static const sint8 eighth_to_diag_sprite_map[] = {0, 1, 2, -1, 3};
void track_paint_util_eighth_to_diag_tiles_paint(const sint8 thickness[4][4], sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][4], const rct_xy16 offsets[4][4], const rct_xy16 boundsLengths[4][4], const rct_xyz16 boundsOffsets[4][4], uint8 rotation)
void track_paint_util_eighth_to_diag_tiles_paint(paint_session * session, const sint8 thickness[4][4], sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][4], const rct_xy16 offsets[4][4], const rct_xy16 boundsLengths[4][4], const rct_xyz16 boundsOffsets[4][4], uint8 rotation)
{
sint32 index = eighth_to_diag_sprite_map[trackSequence];
if (index < 0) {
@ -1067,7 +1067,7 @@ static const sint8 diag_sprite_map[4][4] = {
{0, -1, -1, -1},
};
void track_paint_util_diag_tiles_paint(sint8 thickness, sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4], const rct_xy16 offsets[4], const rct_xy16 boundsLengths[4], const rct_xyz16 boundsOffsets[4], uint8 rotation)
void track_paint_util_diag_tiles_paint(paint_session * session, sint8 thickness, sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4], const rct_xy16 offsets[4], const rct_xy16 boundsLengths[4], const rct_xyz16 boundsOffsets[4], uint8 rotation)
{
sint32 index = diag_sprite_map[direction][trackSequence];
if (index < 0) {
@ -1178,7 +1178,7 @@ const rct_xy16 defaultRightQuarterTurn5TilesBoundLengths[4][5] = {
};
static const sint8 right_quarter_turn_5_tiles_sprite_map[] = {0, -1, 1, 2, -1, 3, 4};
void track_paint_util_right_quarter_turn_5_tiles_paint(sint8 thickness, sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][5], const rct_xy16 offsets[4][5], const rct_xy16 boundsLengths[4][5], const rct_xyz16 boundsOffsets[4][5], uint8 rotation)
void track_paint_util_right_quarter_turn_5_tiles_paint(paint_session * session, sint8 thickness, sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][5], const rct_xy16 offsets[4][5], const rct_xy16 boundsLengths[4][5], const rct_xyz16 boundsOffsets[4][5], uint8 rotation)
{
sint32 index = right_quarter_turn_5_tiles_sprite_map[trackSequence];
if (index < 0) {
@ -1193,7 +1193,7 @@ void track_paint_util_right_quarter_turn_5_tiles_paint(sint8 thickness, sint16 h
sub_98197C(imageId, (sint8) offset.x, (sint8) offset.y, boundsLength.x, boundsLength.y, thickness, height, boundsOffset.x, boundsOffset.y, height + boundsOffset.z, rotation);
}
void track_paint_util_right_quarter_turn_5_tiles_paint_2(sint16 height, sint32 direction, uint8 rotation, uint8 trackSequence, uint32 colourFlags, const sprite_bb sprites[][5])
void track_paint_util_right_quarter_turn_5_tiles_paint_2(paint_session * session, sint16 height, sint32 direction, uint8 rotation, uint8 trackSequence, uint32 colourFlags, const sprite_bb sprites[][5])
{
sint8 sprite = right_quarter_turn_5_tiles_sprite_map[trackSequence];
if (sprite < 0) {
@ -1210,7 +1210,7 @@ void track_paint_util_right_quarter_turn_5_tiles_paint_2(sint16 height, sint32 d
rotation);
}
void track_paint_util_right_quarter_turn_5_tiles_paint_3(sint16 height, sint32 direction, uint8 rotation, uint8 trackSequence, uint32 colourFlags, const sprite_bb sprites[][5])
void track_paint_util_right_quarter_turn_5_tiles_paint_3(paint_session * session, sint16 height, sint32 direction, uint8 rotation, uint8 trackSequence, uint32 colourFlags, const sprite_bb sprites[][5])
{
sint8 sprite = right_quarter_turn_5_tiles_sprite_map[trackSequence];
if (sprite < 0) {
@ -1226,7 +1226,7 @@ void track_paint_util_right_quarter_turn_5_tiles_paint_3(sint16 height, sint32 d
rotation);
}
void track_paint_util_right_quarter_turn_5_tiles_tunnel(sint16 height, uint8 direction, uint8 trackSequence, uint8 tunnelType)
void track_paint_util_right_quarter_turn_5_tiles_tunnel(paint_session * session, sint16 height, uint8 direction, uint8 trackSequence, uint8 tunnelType)
{
if (direction == 0 && trackSequence == 0) {
paint_util_push_tunnel_left(height, tunnelType);
@ -1328,7 +1328,7 @@ const rct_xy16 defaultRightQuarterTurn3TilesBoundLengths[4][3] = {
};
static const sint8 right_quarter_turn_3_tiles_sprite_map[] = {0, -1, 1, 2};
void track_paint_util_right_quarter_turn_3_tiles_paint(sint8 thickness, sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][3], const rct_xy16 offsets[4][3], const rct_xy16 boundsLengths[4][3], const rct_xyz16 boundsOffsets[4][3], uint8 rotation)
void track_paint_util_right_quarter_turn_3_tiles_paint(paint_session * session, sint8 thickness, sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][3], const rct_xy16 offsets[4][3], const rct_xy16 boundsLengths[4][3], const rct_xyz16 boundsOffsets[4][3], uint8 rotation)
{
sint32 index = right_quarter_turn_3_tiles_sprite_map[trackSequence];
if (index < 0) {
@ -1343,12 +1343,12 @@ void track_paint_util_right_quarter_turn_3_tiles_paint(sint8 thickness, sint16 h
sub_98197C(imageId, (sint8) offset.x, (sint8) offset.y, boundsLength.x, boundsLength.y, thickness, height, boundsOffset.x, boundsOffset.y, height + boundsOffset.z, rotation);
}
void track_paint_util_right_quarter_turn_3_tiles_paint_2(sint8 thickness, sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][3], uint8 rotation)
void track_paint_util_right_quarter_turn_3_tiles_paint_2(paint_session * session, sint8 thickness, sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][3], uint8 rotation)
{
track_paint_util_right_quarter_turn_3_tiles_paint_2_with_height_offset(thickness, height, direction, trackSequence, colourFlags, sprites, rotation, 0);
track_paint_util_right_quarter_turn_3_tiles_paint_2_with_height_offset(session, thickness, height, direction, trackSequence, colourFlags, sprites, rotation, 0);
}
void track_paint_util_right_quarter_turn_3_tiles_paint_2_with_height_offset(sint8 thickness, sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][3], uint8 rotation, sint32 heightOffset)
void track_paint_util_right_quarter_turn_3_tiles_paint_2_with_height_offset(paint_session * session, sint8 thickness, sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][3], uint8 rotation, sint32 heightOffset)
{
sint8 sprite = right_quarter_turn_3_tiles_sprite_map[trackSequence];
if (sprite < 0) {
@ -1392,7 +1392,7 @@ void track_paint_util_right_quarter_turn_3_tiles_paint_2_with_height_offset(sint
}
}
void track_paint_util_right_quarter_turn_3_tiles_paint_3(sint16 height, sint32 direction, uint8 rotation, uint8 trackSequence, uint32 colourFlags, const sprite_bb sprites[4][3])
void track_paint_util_right_quarter_turn_3_tiles_paint_3(paint_session * session, sint16 height, sint32 direction, uint8 rotation, uint8 trackSequence, uint32 colourFlags, const sprite_bb sprites[4][3])
{
sint8 sprite = right_quarter_turn_3_tiles_sprite_map[trackSequence];
if (sprite < 0) {
@ -1402,7 +1402,7 @@ void track_paint_util_right_quarter_turn_3_tiles_paint_3(sint16 height, sint32 d
sub_98197C(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);
}
void track_paint_util_right_quarter_turn_3_tiles_paint_4(sint16 height, sint32 direction, uint8 rotation, uint8 trackSequence, uint32 colourFlags, const sprite_bb sprites[4][3])
void track_paint_util_right_quarter_turn_3_tiles_paint_4(paint_session * session, sint16 height, sint32 direction, uint8 rotation, uint8 trackSequence, uint32 colourFlags, const sprite_bb sprites[4][3])
{
sint8 sprite = right_quarter_turn_3_tiles_sprite_map[trackSequence];
if (sprite < 0) {
@ -1418,7 +1418,7 @@ void track_paint_util_right_quarter_turn_3_tiles_paint_4(sint16 height, sint32 d
rotation);
}
void track_paint_util_right_quarter_turn_3_tiles_tunnel(sint16 height, uint8 direction, uint8 trackSequence, uint8 tunnelType)
void track_paint_util_right_quarter_turn_3_tiles_tunnel(paint_session * session, sint16 height, uint8 direction, uint8 trackSequence, uint8 tunnelType)
{
if (direction == 0 && trackSequence == 0) {
paint_util_push_tunnel_left(height, tunnelType);
@ -1439,7 +1439,7 @@ void track_paint_util_right_quarter_turn_3_tiles_tunnel(sint16 height, uint8 dir
}
}
void track_paint_util_right_quarter_turn_3_tiles_25_deg_up_tunnel(sint16 height, uint8 direction, uint8 trackSequence, uint8 tunnelType0, uint8 tunnelType3)
void track_paint_util_right_quarter_turn_3_tiles_25_deg_up_tunnel(paint_session * session, sint16 height, uint8 direction, uint8 trackSequence, uint8 tunnelType0, uint8 tunnelType3)
{
if (direction == 0 && trackSequence == 0) {
paint_util_push_tunnel_left(height - 8, tunnelType0);
@ -1455,7 +1455,7 @@ void track_paint_util_right_quarter_turn_3_tiles_25_deg_up_tunnel(sint16 height,
}
}
void track_paint_util_right_quarter_turn_3_tiles_25_deg_down_tunnel(sint16 height, uint8 direction, uint8 trackSequence, uint8 tunnelType0, uint8 tunnelType3)
void track_paint_util_right_quarter_turn_3_tiles_25_deg_down_tunnel(paint_session * session, sint16 height, uint8 direction, uint8 trackSequence, uint8 tunnelType0, uint8 tunnelType3)
{
if (direction == 0 && trackSequence == 0) {
paint_util_push_tunnel_left(height + 8, tunnelType0);
@ -1472,12 +1472,12 @@ void track_paint_util_right_quarter_turn_3_tiles_25_deg_down_tunnel(sint16 heigh
}
static const sint8 left_quarter_turn_3_tiles_sprite_map[] = {2, -1, 1, 0};
void track_paint_util_left_quarter_turn_3_tiles_paint(sint8 thickness, sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][3], uint8 rotation)
void track_paint_util_left_quarter_turn_3_tiles_paint(paint_session * session, sint8 thickness, sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][3], uint8 rotation)
{
track_paint_util_left_quarter_turn_3_tiles_paint_with_height_offset(thickness, height, direction, trackSequence, colourFlags, sprites, rotation, 0);
track_paint_util_left_quarter_turn_3_tiles_paint_with_height_offset(session, thickness, height, direction, trackSequence, colourFlags, sprites, rotation, 0);
}
void track_paint_util_left_quarter_turn_3_tiles_paint_with_height_offset(sint8 thickness, sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][3], uint8 rotation, sint32 heightOffset)
void track_paint_util_left_quarter_turn_3_tiles_paint_with_height_offset(paint_session * session, sint8 thickness, sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][3], uint8 rotation, sint32 heightOffset)
{
sint8 sprite = left_quarter_turn_3_tiles_sprite_map[trackSequence];
if (sprite < 0) {
@ -1538,7 +1538,7 @@ void track_paint_util_left_quarter_turn_3_tiles_paint_with_height_offset(sint8 t
// rotation);
// }
void track_paint_util_left_quarter_turn_3_tiles_tunnel(sint16 height, uint8 tunnelType, uint8 direction, uint8 trackSequence)
void track_paint_util_left_quarter_turn_3_tiles_tunnel(paint_session * session, sint16 height, uint8 tunnelType, uint8 direction, uint8 trackSequence)
{
if (direction == 0 && trackSequence == 0) {
paint_util_push_tunnel_left(height, tunnelType);
@ -1560,7 +1560,7 @@ void track_paint_util_left_quarter_turn_3_tiles_tunnel(sint16 height, uint8 tunn
}
void track_paint_util_left_quarter_turn_1_tile_paint(sint8 thickness, sint16 height, sint16 boundBoxZOffset, sint32 direction, uint32 colourFlags, const uint32 * sprites, uint8 rotation)
void track_paint_util_left_quarter_turn_1_tile_paint(paint_session * session, sint8 thickness, sint16 height, sint16 boundBoxZOffset, sint32 direction, uint32 colourFlags, const uint32 * sprites, uint8 rotation)
{
uint32 imageId = sprites[direction] | colourFlags;
@ -1573,12 +1573,12 @@ void track_paint_util_left_quarter_turn_1_tile_paint(sint8 thickness, sint16 hei
}
void track_paint_util_right_quarter_turn_1_tile_tunnel(uint8 direction, uint16 baseHeight, sint8 startOffset, uint8 startTunnel, sint8 endOffset, uint8 endTunnel)
void track_paint_util_right_quarter_turn_1_tile_tunnel(paint_session * session, uint8 direction, uint16 baseHeight, sint8 startOffset, uint8 startTunnel, sint8 endOffset, uint8 endTunnel)
{
track_paint_util_left_quarter_turn_1_tile_tunnel((direction + 3) % 4, baseHeight, endOffset, endTunnel, startOffset, startTunnel);
track_paint_util_left_quarter_turn_1_tile_tunnel(session, (direction + 3) % 4, baseHeight, endOffset, endTunnel, startOffset, startTunnel);
}
void track_paint_util_left_quarter_turn_1_tile_tunnel(uint8 direction, uint16 baseHeight, sint8 startOffset, uint8 startTunnel, sint8 endOffset, uint8 endTunnel)
void track_paint_util_left_quarter_turn_1_tile_tunnel(paint_session * session, uint8 direction, uint16 baseHeight, sint8 startOffset, uint8 startTunnel, sint8 endOffset, uint8 endTunnel)
{
switch (direction) {
case 0:
@ -1594,7 +1594,7 @@ void track_paint_util_left_quarter_turn_1_tile_tunnel(uint8 direction, uint16 ba
}
}
void track_paint_util_spinning_tunnel_paint(sint8 thickness, sint16 height, uint8 direction, uint8 rotation)
void track_paint_util_spinning_tunnel_paint(paint_session * session, sint8 thickness, sint16 height, uint8 direction, uint8 rotation)
{
sint32 frame = gScenarioTicks >> 2 & 3;
@ -1620,7 +1620,7 @@ void track_paint_util_spinning_tunnel_paint(sint8 thickness, sint16 height, uint
}
}
void track_paint_util_onride_photo_small_paint(uint8 direction, sint32 height, rct_map_element *mapElement)
void track_paint_util_onride_photo_small_paint(paint_session * session, uint8 direction, sint32 height, rct_map_element *mapElement)
{
static const uint32 imageIds[4][3] =
{
@ -1657,7 +1657,7 @@ void track_paint_util_onride_photo_small_paint(uint8 direction, sint32 height, r
}
}
void track_paint_util_onride_photo_paint(uint8 direction, sint32 height, rct_map_element *mapElement)
void track_paint_util_onride_photo_paint(paint_session * session, uint8 direction, sint32 height, rct_map_element *mapElement)
{
static const uint32 imageIds[4][3] =
{
@ -1707,7 +1707,7 @@ uint16 RightVerticalLoopSegments[] ={
SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0,
};
void track_paint_util_right_vertical_loop_segments(uint8 direction, uint8 trackSequence)
void track_paint_util_right_vertical_loop_segments(paint_session * session, uint8 direction, uint8 trackSequence)
{
if (trackSequence > 9)
{

View File

@ -262,49 +262,49 @@ extern const uint8 mapLeftEighthTurnToOrthogonal[5];
extern bool gUseOriginalRidePaint;
bool track_paint_util_has_fence(enum edge_t edge, rct_xy16 position, rct_map_element * mapElement, rct_ride * ride, uint8 rotation);
void track_paint_util_paint_floor(uint8 edges, uint32 colourFlags, uint16 height, const uint32 floorSprites[4], uint8 rotation);
void track_paint_util_paint_fences(uint8 edges, rct_xy16 position, rct_map_element * mapElement, rct_ride * ride, uint32 colourFlags, uint16 height, const uint32 fenceSprites[4], uint8 rotation);
bool track_paint_util_draw_station_covers(enum edge_t edge, bool hasFence, const rct_ride_entrance_definition * entranceStyle, uint8 direction, uint16 height);
bool track_paint_util_draw_station_covers_2(enum edge_t edge, bool hasFence, const rct_ride_entrance_definition * entranceStyle, uint8 direction, uint16 height, uint8 stationVariant);
void track_paint_util_draw_station_platform(rct_ride *ride, uint8 direction, sint32 height, sint32 zOffset, rct_map_element * mapElement);
void track_paint_util_draw_station(uint8 rideIndex, uint8 trackSequence, uint8 direction, uint16 height, rct_map_element * mapElement);
void track_paint_util_draw_station_2(uint8 rideIndex, uint8 trackSequence, uint8 direction, uint16 height, rct_map_element * mapElement, sint32 fenceOffsetA, sint32 fenceOffsetB);
void track_paint_util_draw_station_3(uint8 rideIndex, uint8 trackSequence, uint8 direction, uint16 height, uint16 coverHeight, rct_map_element * mapElement);
void track_paint_util_draw_station_inverted(uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement, uint8 stationVariant);
void track_paint_util_paint_floor(paint_session * session, uint8 edges, uint32 colourFlags, uint16 height, const uint32 floorSprites[4], uint8 rotation);
void track_paint_util_paint_fences(paint_session * session, uint8 edges, rct_xy16 position, rct_map_element * mapElement, rct_ride * ride, uint32 colourFlags, uint16 height, const uint32 fenceSprites[4], uint8 rotation);
bool track_paint_util_draw_station_covers(paint_session * session, enum edge_t edge, bool hasFence, const rct_ride_entrance_definition * entranceStyle, uint8 direction, uint16 height);
bool track_paint_util_draw_station_covers_2(paint_session * session, enum edge_t edge, bool hasFence, const rct_ride_entrance_definition * entranceStyle, uint8 direction, uint16 height, uint8 stationVariant);
void track_paint_util_draw_station_platform(paint_session * session, rct_ride *ride, uint8 direction, sint32 height, sint32 zOffset, rct_map_element * mapElement);
void track_paint_util_draw_station(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, uint16 height, rct_map_element * mapElement);
void track_paint_util_draw_station_2(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, uint16 height, rct_map_element * mapElement, sint32 fenceOffsetA, sint32 fenceOffsetB);
void track_paint_util_draw_station_3(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, uint16 height, uint16 coverHeight, rct_map_element * mapElement);
void track_paint_util_draw_station_inverted(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement, uint8 stationVariant);
bool track_paint_util_should_paint_supports(rct_xy16 position);
void track_paint_util_draw_pier(rct_ride * ride, const rct_ride_entrance_definition * entranceStyle, rct_xy16 position, uint8 direction, sint32 height, rct_map_element * mapElement, uint8 rotation);
void track_paint_util_draw_pier(paint_session * session, rct_ride * ride, const rct_ride_entrance_definition * entranceStyle, rct_xy16 position, uint8 direction, sint32 height, rct_map_element * mapElement, uint8 rotation);
void track_paint_util_draw_station_metal_supports(paint_session * session, uint8 direction, uint16 height, uint32 colour);
void track_paint_util_draw_station_metal_supports_2(paint_session * session, uint8 direction, uint16 height, uint32 colour, uint8 type);
void track_paint_util_right_quarter_turn_5_tiles_paint(sint8 thickness, sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][5], const rct_xy16 offsets[4][5], const rct_xy16 boundsLengths[4][5], const rct_xyz16 boundsOffsets[4][5], uint8 rotation);
void track_paint_util_right_quarter_turn_5_tiles_paint_2(sint16 height, sint32 direction, uint8 rotation, uint8 trackSequence, uint32 colourFlags, const sprite_bb sprites[][5]);
void track_paint_util_right_quarter_turn_5_tiles_paint_3(sint16 height, sint32 direction, uint8 rotation, uint8 trackSequence, uint32 colourFlags, const sprite_bb sprites[][5]);
void track_paint_util_right_quarter_turn_5_tiles_tunnel(sint16 height, uint8 direction, uint8 trackSequence, uint8 tunnelType);
void track_paint_util_right_quarter_turn_5_tiles_paint(paint_session * session, sint8 thickness, sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][5], const rct_xy16 offsets[4][5], const rct_xy16 boundsLengths[4][5], const rct_xyz16 boundsOffsets[4][5], uint8 rotation);
void track_paint_util_right_quarter_turn_5_tiles_paint_2(paint_session * session, sint16 height, sint32 direction, uint8 rotation, uint8 trackSequence, uint32 colourFlags, const sprite_bb sprites[][5]);
void track_paint_util_right_quarter_turn_5_tiles_paint_3(paint_session * session, sint16 height, sint32 direction, uint8 rotation, uint8 trackSequence, uint32 colourFlags, const sprite_bb sprites[][5]);
void track_paint_util_right_quarter_turn_5_tiles_tunnel(paint_session * session, sint16 height, uint8 direction, uint8 trackSequence, uint8 tunnelType);
void track_paint_util_right_quarter_turn_5_tiles_wooden_supports(paint_session * session, sint16 height, uint8 direction, uint8 trackSequence);
void track_paint_util_right_quarter_turn_3_tiles_25_deg_up_tunnel(sint16 height, uint8 direction, uint8 trackSequence, uint8 tunnelType0, uint8 tunnelType3);
void track_paint_util_right_quarter_turn_3_tiles_25_deg_down_tunnel(sint16 height, uint8 direction, uint8 trackSequence, uint8 tunnelType0, uint8 tunnelType3);
void track_paint_util_right_quarter_turn_3_tiles_paint(sint8 thickness, sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][3], const rct_xy16 offsets[4][3], const rct_xy16 boundsLengths[4][3], const rct_xyz16 boundsOffsets[4][3], uint8 rotation);
void track_paint_util_right_quarter_turn_3_tiles_paint_2(sint8 thickness, sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][3], uint8 rotation);
void track_paint_util_right_quarter_turn_3_tiles_paint_2_with_height_offset(sint8 thickness, sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][3], uint8 rotation, sint32 heightOffset);
void track_paint_util_right_quarter_turn_3_tiles_paint_3(sint16 height, sint32 direction, uint8 rotation, uint8 trackSequence, uint32 colourFlags, const sprite_bb sprites[4][3]);
void track_paint_util_right_quarter_turn_3_tiles_paint_4(sint16 height, sint32 direction, uint8 rotation, uint8 trackSequence, uint32 colourFlags, const sprite_bb sprites[4][3]);
void track_paint_util_right_quarter_turn_3_tiles_tunnel(sint16 height, uint8 direction, uint8 trackSequence, uint8 tunnelType);
void track_paint_util_left_quarter_turn_3_tiles_paint(sint8 thickness, sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][3], uint8 rotation);
void track_paint_util_left_quarter_turn_3_tiles_paint_with_height_offset(sint8 thickness, sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][3], uint8 rotation, sint32 heightOffset);
void track_paint_util_left_quarter_turn_3_tiles_tunnel(sint16 height, uint8 tunnelType, uint8 direction, uint8 trackSequence);
void track_paint_util_left_quarter_turn_1_tile_paint(sint8 thickness, sint16 height, sint16 boundBoxZOffset, sint32 direction, uint32 colourFlags, const uint32 * sprites, uint8 rotation);
void track_paint_util_spinning_tunnel_paint(sint8 thickness, sint16 height, uint8 direction, uint8 rotation);
void track_paint_util_onride_photo_small_paint(uint8 direction, sint32 height, rct_map_element *mapElement);
void track_paint_util_onride_photo_paint(uint8 direction, sint32 height, rct_map_element *mapElement);
void track_paint_util_right_helix_up_small_quarter_tiles_paint(const sint8 thickness[2], sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][3][2], const rct_xy16 offsets[4][3][2], const rct_xy16 boundsLengths[4][3][2], const rct_xyz16 boundsOffsets[4][3][2], uint8 rotation);
void track_paint_util_right_helix_up_large_quarter_tiles_paint(const sint8 thickness[2], sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][5][2], const rct_xy16 offsets[4][5][2], const rct_xy16 boundsLengths[4][5][2], const rct_xyz16 boundsOffsets[4][5][2], uint8 rotation);
void track_paint_util_eighth_to_diag_tiles_paint(const sint8 thickness[4][4], sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][4], const rct_xy16 offsets[4][4], const rct_xy16 boundsLengths[4][4], const rct_xyz16 boundsOffsets[4][4], uint8 rotation);
void track_paint_util_diag_tiles_paint(sint8 thickness, sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4], const rct_xy16 offsets[4], const rct_xy16 boundsLengths[4], const rct_xyz16 boundsOffsets[4], uint8 rotation);
void track_paint_util_right_quarter_turn_3_tiles_25_deg_up_tunnel(paint_session * session, sint16 height, uint8 direction, uint8 trackSequence, uint8 tunnelType0, uint8 tunnelType3);
void track_paint_util_right_quarter_turn_3_tiles_25_deg_down_tunnel(paint_session * session, sint16 height, uint8 direction, uint8 trackSequence, uint8 tunnelType0, uint8 tunnelType3);
void track_paint_util_right_quarter_turn_3_tiles_paint(paint_session * session, sint8 thickness, sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][3], const rct_xy16 offsets[4][3], const rct_xy16 boundsLengths[4][3], const rct_xyz16 boundsOffsets[4][3], uint8 rotation);
void track_paint_util_right_quarter_turn_3_tiles_paint_2(paint_session * session, sint8 thickness, sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][3], uint8 rotation);
void track_paint_util_right_quarter_turn_3_tiles_paint_2_with_height_offset(paint_session * session, sint8 thickness, sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][3], uint8 rotation, sint32 heightOffset);
void track_paint_util_right_quarter_turn_3_tiles_paint_3(paint_session * session, sint16 height, sint32 direction, uint8 rotation, uint8 trackSequence, uint32 colourFlags, const sprite_bb sprites[4][3]);
void track_paint_util_right_quarter_turn_3_tiles_paint_4(paint_session * session, sint16 height, sint32 direction, uint8 rotation, uint8 trackSequence, uint32 colourFlags, const sprite_bb sprites[4][3]);
void track_paint_util_right_quarter_turn_3_tiles_tunnel(paint_session * session, sint16 height, uint8 direction, uint8 trackSequence, uint8 tunnelType);
void track_paint_util_left_quarter_turn_3_tiles_paint(paint_session * session, sint8 thickness, sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][3], uint8 rotation);
void track_paint_util_left_quarter_turn_3_tiles_paint_with_height_offset(paint_session * session, sint8 thickness, sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][3], uint8 rotation, sint32 heightOffset);
void track_paint_util_left_quarter_turn_3_tiles_tunnel(paint_session * session, sint16 height, uint8 tunnelType, uint8 direction, uint8 trackSequence);
void track_paint_util_left_quarter_turn_1_tile_paint(paint_session * session, sint8 thickness, sint16 height, sint16 boundBoxZOffset, sint32 direction, uint32 colourFlags, const uint32 * sprites, uint8 rotation);
void track_paint_util_spinning_tunnel_paint(paint_session * session, sint8 thickness, sint16 height, uint8 direction, uint8 rotation);
void track_paint_util_onride_photo_small_paint(paint_session * session, uint8 direction, sint32 height, rct_map_element *mapElement);
void track_paint_util_onride_photo_paint(paint_session * session, uint8 direction, sint32 height, rct_map_element *mapElement);
void track_paint_util_right_helix_up_small_quarter_tiles_paint(paint_session * session, const sint8 thickness[2], sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][3][2], const rct_xy16 offsets[4][3][2], const rct_xy16 boundsLengths[4][3][2], const rct_xyz16 boundsOffsets[4][3][2], uint8 rotation);
void track_paint_util_right_helix_up_large_quarter_tiles_paint(paint_session * session, const sint8 thickness[2], sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][5][2], const rct_xy16 offsets[4][5][2], const rct_xy16 boundsLengths[4][5][2], const rct_xyz16 boundsOffsets[4][5][2], uint8 rotation);
void track_paint_util_eighth_to_diag_tiles_paint(paint_session * session, const sint8 thickness[4][4], sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4][4], const rct_xy16 offsets[4][4], const rct_xy16 boundsLengths[4][4], const rct_xyz16 boundsOffsets[4][4], uint8 rotation);
void track_paint_util_diag_tiles_paint(paint_session * session, sint8 thickness, sint16 height, sint32 direction, uint8 trackSequence, uint32 colourFlags, const uint32 sprites[4], const rct_xy16 offsets[4], const rct_xy16 boundsLengths[4], const rct_xyz16 boundsOffsets[4], uint8 rotation);
void track_paint_util_left_quarter_turn_1_tile_tunnel(uint8 direction, uint16 baseHeight, sint8 startOffset, uint8 startTunnel, sint8 endOffset, uint8 endTunnel);
void track_paint_util_right_quarter_turn_1_tile_tunnel(uint8 direction, uint16 baseHeight, sint8 startOffset, uint8 startTunnel, sint8 endOffset, uint8 endTunnel);
void track_paint_util_left_quarter_turn_1_tile_tunnel(paint_session * session, uint8 direction, uint16 baseHeight, sint8 startOffset, uint8 startTunnel, sint8 endOffset, uint8 endTunnel);
void track_paint_util_right_quarter_turn_1_tile_tunnel(paint_session * session, uint8 direction, uint16 baseHeight, sint8 startOffset, uint8 startTunnel, sint8 endOffset, uint8 endTunnel);
void track_paint_util_right_vertical_loop_segments(uint8 direction, uint8 trackSequence);
void track_paint_util_right_vertical_loop_segments(paint_session * session, uint8 direction, uint8 trackSequence);
void track_paint_util_left_corkscrew_up_supports(paint_session * session, uint8 direction, uint16 height);

View File

@ -191,7 +191,7 @@ static void chairlift_paint_station_ne_sw(paint_session * session, uint8 rideInd
imageId = SPR_FENCE_METAL_NW | gTrackColours[SCHEME_TRACK];
sub_98199C(imageId, 0, 0, 32, 1, 7, height, 0, 2, height + 2, get_current_rotation());
}
track_paint_util_draw_station_covers(EDGE_NW, hasFence, entranceStyle, direction, height);
track_paint_util_draw_station_covers(session, EDGE_NW, hasFence, entranceStyle, direction, height);
if ((direction == 2 && isStart) || (direction == 0 && isEnd)) {
imageId = SPR_FENCE_METAL_NE | gTrackColours[SCHEME_TRACK];
@ -203,7 +203,7 @@ static void chairlift_paint_station_ne_sw(paint_session * session, uint8 rideInd
imageId = SPR_FENCE_METAL_SE | gTrackColours[SCHEME_TRACK];
sub_98197C(imageId, 0, 0, 32, 1, 27, height, 0, 30, height + 2, get_current_rotation());
}
track_paint_util_draw_station_covers(EDGE_SE, hasFence, entranceStyle, direction, height);
track_paint_util_draw_station_covers(session, EDGE_SE, hasFence, entranceStyle, direction, height);
bool drawFrontColumn = true;
bool drawBackColumn = true;
@ -270,7 +270,7 @@ static void chairlift_paint_station_se_nw(paint_session * session, uint8 rideInd
imageId = SPR_FENCE_METAL_NE | gTrackColours[SCHEME_TRACK];
sub_98199C(imageId, 0, 0, 1, 32, 7, height, 2, 0, height + 2, get_current_rotation());
}
track_paint_util_draw_station_covers(EDGE_NE, hasFence, entranceStyle, direction, height);
track_paint_util_draw_station_covers(session, EDGE_NE, hasFence, entranceStyle, direction, height);
if ((direction == 1 && isStart) || (direction == 3 && isEnd)) {
imageId = SPR_FENCE_METAL_NW | gTrackColours[SCHEME_TRACK];
@ -282,7 +282,7 @@ static void chairlift_paint_station_se_nw(paint_session * session, uint8 rideInd
imageId = SPR_FENCE_METAL_SW | gTrackColours[SCHEME_TRACK];
sub_98197C(imageId, 0, 0, 1, 32, 27, height, 30, 0, height + 2, get_current_rotation());
}
track_paint_util_draw_station_covers(EDGE_SW, hasFence, entranceStyle, direction, height);
track_paint_util_draw_station_covers(session, EDGE_SW, hasFence, entranceStyle, direction, height);
bool drawRightColumn = true;
bool drawLeftColumn = true;

View File

@ -84,7 +84,7 @@ static void paint_lift_base(paint_session * session, uint8 rideIndex, uint8 trac
uint32 imageId = SPR_FLOOR_METAL_B | gTrackColours[SCHEME_SUPPORTS];
sub_98197C(imageId, 0, 0, 32, 32, 1, height, 0, 0, height, get_current_rotation());
track_paint_util_paint_fences(edges, position, mapElement, ride, gTrackColours[SCHEME_TRACK], height, fenceSpritesMetalB, get_current_rotation());
track_paint_util_paint_fences(session, edges, position, mapElement, ride, gTrackColours[SCHEME_TRACK], height, fenceSpritesMetalB, get_current_rotation());
sint32 blockedSegments = 0;
switch (trackSequence) {

View File

@ -611,7 +611,7 @@ static void paint_miniature_railway_station(paint_session * session, uint8 rideI
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
track_paint_util_draw_station_3(rideIndex, trackSequence, direction, height + 2, height, mapElement);
track_paint_util_draw_station_3(session, rideIndex, trackSequence, direction, height + 2, height, mapElement);
// covers shouldn't be offset by +2
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
@ -840,10 +840,10 @@ static void paint_miniature_railway_track_right_quarter_turn_5_tiles(paint_sessi
bool isSupported = wooden_a_supports_paint_setup(session, right_quarter_turn_5_supports_type[direction][trackSequence], 0, height, gTrackColours[SCHEME_SUPPORTS], NULL);
if (isSupported == false || (trackSequence == 3 && direction == 2)) {
track_paint_util_right_quarter_turn_5_tiles_paint(2, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], miniature_railway_track_pieces_flat_quarter_turn_5_tiles, miniature_railway_right_quarter_turn_5_tiles_offsets, miniature_railway_right_quarter_turn_5_tiles_bound_lengths, NULL, get_current_rotation());
track_paint_util_right_quarter_turn_5_tiles_paint(session, 2, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], miniature_railway_track_pieces_flat_quarter_turn_5_tiles, miniature_railway_right_quarter_turn_5_tiles_offsets, miniature_railway_right_quarter_turn_5_tiles_bound_lengths, NULL, get_current_rotation());
}
else {
track_paint_util_right_quarter_turn_5_tiles_paint(2, height, direction, trackSequence, gTrackColours[SCHEME_SUPPORTS], miniature_railway_right_quarter_turn_5_tiles_track_floor, NULL, miniature_railway_right_quarter_turn_5_tiles_bound_lengths, miniature_railway_right_quarter_turn_5_tiles_bound_offsets, get_current_rotation());
track_paint_util_right_quarter_turn_5_tiles_paint(session, 2, height, direction, trackSequence, gTrackColours[SCHEME_SUPPORTS], miniature_railway_right_quarter_turn_5_tiles_track_floor, NULL, miniature_railway_right_quarter_turn_5_tiles_bound_lengths, miniature_railway_right_quarter_turn_5_tiles_bound_offsets, get_current_rotation());
sint32 index = miniature_railway_right_quarter_turn_5_tiles_sprite_map[trackSequence];
uint32 imageId = miniature_railway_track_pieces_flat_quarter_turn_5_tiles[direction][index] | gTrackColours[SCHEME_TRACK];
@ -1111,10 +1111,10 @@ static void paint_miniature_railway_track_right_quarter_turn_3_tiles(paint_sessi
isSupported = wooden_a_supports_paint_setup(session, supportType[direction], 0, height, gTrackColours[SCHEME_SUPPORTS], NULL);
}
if (isSupported == false) {
track_paint_util_right_quarter_turn_3_tiles_paint(3, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], miniature_railway_track_pieces_flat_quarter_turn_3_tiles, defaultRightQuarterTurn3TilesOffsets, defaultRightQuarterTurn3TilesBoundLengths, NULL, get_current_rotation());
track_paint_util_right_quarter_turn_3_tiles_paint(session, 3, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], miniature_railway_track_pieces_flat_quarter_turn_3_tiles, defaultRightQuarterTurn3TilesOffsets, defaultRightQuarterTurn3TilesBoundLengths, NULL, get_current_rotation());
}
else {
track_paint_util_right_quarter_turn_3_tiles_paint(3, height, direction, trackSequence, gTrackColours[SCHEME_SUPPORTS], miniature_railway_right_quarter_turn_3_tile_track_floor, NULL, defaultRightQuarterTurn3TilesBoundLengths, miniature_railway_right_quarter_turn_3_tile_bound_offsets, get_current_rotation());
track_paint_util_right_quarter_turn_3_tiles_paint(session, 3, height, direction, trackSequence, gTrackColours[SCHEME_SUPPORTS], miniature_railway_right_quarter_turn_3_tile_track_floor, NULL, defaultRightQuarterTurn3TilesBoundLengths, miniature_railway_right_quarter_turn_3_tile_bound_offsets, get_current_rotation());
static const sint8 right_quarter_turn_3_tiles_sprite_map[] = {0, -1, 1, 2};
@ -1127,7 +1127,7 @@ static void paint_miniature_railway_track_right_quarter_turn_3_tiles(paint_sessi
sub_98199C(imageId, (sint8) offset.x, (sint8) offset.y, boundsLength.x, boundsLength.y, 3, height, boundsOffset.x, boundsOffset.y, height + boundsOffset.z, get_current_rotation());
}
track_paint_util_right_quarter_turn_3_tiles_tunnel(height, direction, trackSequence, TUNNEL_6);
track_paint_util_right_quarter_turn_3_tiles_tunnel(session, height, direction, trackSequence, TUNNEL_6);
sint32 blockedSegments = 0;
switch (trackSequence) {

View File

@ -501,7 +501,7 @@ static void paint_monorail_station(paint_session * session, uint8 rideIndex, uin
metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 7, 0, height, gTrackColours[SCHEME_SUPPORTS]);
}
track_paint_util_draw_station(rideIndex, trackSequence, direction, height, mapElement);
track_paint_util_draw_station(session, rideIndex, trackSequence, direction, height, mapElement);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 32, 0x20);
@ -612,7 +612,7 @@ static void paint_monorail_track_25_deg_down_to_flat(paint_session * session, ui
/** rct2: 0x008AE22C */
static void paint_monorail_track_right_quarter_turn_5_tiles(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
track_paint_util_right_quarter_turn_5_tiles_paint(3, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], monorail_track_pieces_flat_quarter_turn_5_tiles, defaultRightQuarterTurn5TilesOffsets, defaultRightQuarterTurn5TilesBoundLengths, NULL, get_current_rotation());
track_paint_util_right_quarter_turn_5_tiles_paint(session, 3, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], monorail_track_pieces_flat_quarter_turn_5_tiles, defaultRightQuarterTurn5TilesOffsets, defaultRightQuarterTurn5TilesBoundLengths, NULL, get_current_rotation());
switch (trackSequence) {
case 0:
@ -790,8 +790,8 @@ static void paint_monorail_track_s_bend_right(paint_session * session, uint8 rid
/** rct2: 0x008AE29C */
static void paint_monorail_track_right_quarter_turn_3_tiles(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
track_paint_util_right_quarter_turn_3_tiles_paint(3, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], monorail_track_pieces_flat_quarter_turn_3_tiles, defaultRightQuarterTurn3TilesOffsets, defaultRightQuarterTurn3TilesBoundLengths, NULL, get_current_rotation());
track_paint_util_right_quarter_turn_3_tiles_tunnel(height, direction, trackSequence, TUNNEL_6);
track_paint_util_right_quarter_turn_3_tiles_paint(session, 3, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], monorail_track_pieces_flat_quarter_turn_3_tiles, defaultRightQuarterTurn3TilesOffsets, defaultRightQuarterTurn3TilesBoundLengths, NULL, get_current_rotation());
track_paint_util_right_quarter_turn_3_tiles_tunnel(session, height, direction, trackSequence, TUNNEL_6);
switch (trackSequence) {
case 0:

View File

@ -63,7 +63,7 @@ static void suspended_monorail_track_station(paint_session * session, uint8 ride
sub_98197C_rotated(direction, imageIds[direction][1] | gTrackColours[SCHEME_TRACK], 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32);
sub_98199C_rotated(direction, imageIds[direction][2] | gTrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 3, height + 32, 0, 6, height + 32);
track_paint_util_draw_station_metal_supports_2(session, direction, height, gTrackColours[SCHEME_SUPPORTS], 3);
track_paint_util_draw_station_inverted(rideIndex, trackSequence, direction, height, mapElement, STATION_VARIANT_TALL);
track_paint_util_draw_station_inverted(session, rideIndex, trackSequence, direction, height, mapElement, STATION_VARIANT_TALL);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_9);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
paint_util_set_general_support_height(height + 48, 0x20);

View File

@ -68,10 +68,10 @@ static void paint_boat_ride_station(paint_session * session, uint8 rideIndex, ui
if (direction & 1) {
paint_util_push_tunnel_right(height, TUNNEL_6);
track_paint_util_draw_pier(ride, entranceStyle, position, direction, height, mapElement, get_current_rotation());
track_paint_util_draw_pier(session, ride, entranceStyle, position, direction, height, mapElement, get_current_rotation());
} else {
paint_util_push_tunnel_left(height, TUNNEL_6);
track_paint_util_draw_pier(ride, entranceStyle, position, direction, height, mapElement, get_current_rotation());
track_paint_util_draw_pier(session, ride, entranceStyle, position, direction, height, mapElement, get_current_rotation());
}
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);

View File

@ -404,7 +404,7 @@ static void dinghy_slide_track_station(paint_session * session, uint8 rideIndex,
metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 5 + (direction & 1), 0, height, gTrackColours[SCHEME_SUPPORTS]);
metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 8 - (direction & 1), 0, height, gTrackColours[SCHEME_SUPPORTS]);
track_paint_util_draw_station(rideIndex, trackSequence, direction, height, mapElement);
track_paint_util_draw_station(session, rideIndex, trackSequence, direction, height, mapElement);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
@ -701,8 +701,8 @@ static void dinghy_slide_track_right_quarter_turn_5(paint_session * session, uin
}
};
track_paint_util_right_quarter_turn_5_tiles_paint_2(height, direction, get_current_rotation(), trackSequence, gTrackColours[SCHEME_TRACK], imageIds);
track_paint_util_right_quarter_turn_5_tiles_paint_2(height, direction, get_current_rotation(), trackSequence, gTrackColours[SCHEME_TRACK], frontImageIds);
track_paint_util_right_quarter_turn_5_tiles_paint_2(session, height, direction, get_current_rotation(), trackSequence, gTrackColours[SCHEME_TRACK], imageIds);
track_paint_util_right_quarter_turn_5_tiles_paint_2(session, height, direction, get_current_rotation(), trackSequence, gTrackColours[SCHEME_TRACK], frontImageIds);
switch (trackSequence) {
case 0:
@ -937,9 +937,9 @@ static void dinghy_slide_track_right_quarter_turn_3(paint_session * session, uin
}
};
track_paint_util_right_quarter_turn_3_tiles_paint_3(height, direction, get_current_rotation(), trackSequence, gTrackColours[SCHEME_TRACK], imageIds);
track_paint_util_right_quarter_turn_3_tiles_paint_3(height, direction, get_current_rotation(), trackSequence, gTrackColours[SCHEME_TRACK], frontImageIds);
track_paint_util_right_quarter_turn_3_tiles_tunnel(height, direction, trackSequence, TUNNEL_0);
track_paint_util_right_quarter_turn_3_tiles_paint_3(session, height, direction, get_current_rotation(), trackSequence, gTrackColours[SCHEME_TRACK], imageIds);
track_paint_util_right_quarter_turn_3_tiles_paint_3(session, height, direction, get_current_rotation(), trackSequence, gTrackColours[SCHEME_TRACK], frontImageIds);
track_paint_util_right_quarter_turn_3_tiles_tunnel(session, height, direction, trackSequence, TUNNEL_0);
switch (trackSequence) {
case 0:
@ -1252,8 +1252,8 @@ static void dinghy_slide_track_right_quarter_turn_5_covered(paint_session * sess
}
};
track_paint_util_right_quarter_turn_5_tiles_paint_2(height, direction, get_current_rotation(), trackSequence, gTrackColours[SCHEME_TRACK], imageIds);
track_paint_util_right_quarter_turn_5_tiles_paint_2(height, direction, get_current_rotation(), trackSequence, gTrackColours[SCHEME_TRACK], frontImageIds);
track_paint_util_right_quarter_turn_5_tiles_paint_2(session, height, direction, get_current_rotation(), trackSequence, gTrackColours[SCHEME_TRACK], imageIds);
track_paint_util_right_quarter_turn_5_tiles_paint_2(session, height, direction, get_current_rotation(), trackSequence, gTrackColours[SCHEME_TRACK], frontImageIds);
switch (trackSequence) {
case 0:
@ -1483,9 +1483,9 @@ static void dinghy_slide_track_right_quarter_turn_3_covered(paint_session * sess
}
};
track_paint_util_right_quarter_turn_3_tiles_paint_3(height, direction, get_current_rotation(), trackSequence, gTrackColours[SCHEME_TRACK], imageIds);
track_paint_util_right_quarter_turn_3_tiles_paint_3(height, direction, get_current_rotation(), trackSequence, gTrackColours[SCHEME_TRACK], frontImageIds);
track_paint_util_right_quarter_turn_3_tiles_tunnel(height, direction, trackSequence, TUNNEL_0);
track_paint_util_right_quarter_turn_3_tiles_paint_3(session, height, direction, get_current_rotation(), trackSequence, gTrackColours[SCHEME_TRACK], imageIds);
track_paint_util_right_quarter_turn_3_tiles_paint_3(session, height, direction, get_current_rotation(), trackSequence, gTrackColours[SCHEME_TRACK], frontImageIds);
track_paint_util_right_quarter_turn_3_tiles_tunnel(session, height, direction, trackSequence, TUNNEL_0);
switch (trackSequence) {
case 0:

View File

@ -205,7 +205,7 @@ static void paint_log_flume_track_station(paint_session * session, uint8 rideInd
metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 8, 0, height, gTrackColours[SCHEME_SUPPORTS]);
}
track_paint_util_draw_station_3(rideIndex, trackSequence, direction, height + 2, height, mapElement);
track_paint_util_draw_station_3(session, rideIndex, trackSequence, direction, height + 2, height, mapElement);
// Covers shouldn't be offset by +2
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
@ -550,8 +550,8 @@ static void paint_log_flume_track_left_quarter_turn_3_tiles(paint_session * sess
{ SPR_LOG_FLUME_3_TURN_FRONT_NW_NE_SEQ_0, SPR_LOG_FLUME_3_TURN_FRONT_NW_NE_SEQ_2, SPR_LOG_FLUME_3_TURN_FRONT_NW_NE_SEQ_3 },
};
track_paint_util_left_quarter_turn_3_tiles_paint(2, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], imageIds, get_current_rotation());
track_paint_util_left_quarter_turn_3_tiles_paint_with_height_offset(0, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], imageIdsFront, get_current_rotation(), 27);
track_paint_util_left_quarter_turn_3_tiles_paint(session, 2, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], imageIds, get_current_rotation());
track_paint_util_left_quarter_turn_3_tiles_paint_with_height_offset(session, 0, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], imageIdsFront, get_current_rotation(), 27);
if (trackSequence != 1 && trackSequence != 2) {
metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, gTrackColours[SCHEME_SUPPORTS]);
@ -597,8 +597,8 @@ static void paint_log_flume_track_right_quarter_turn_3_tiles(paint_session * ses
{ SPR_LOG_FLUME_3_TURN_FRONT_SW_NW_SEQ_0, SPR_LOG_FLUME_3_TURN_FRONT_SW_NW_SEQ_2, SPR_LOG_FLUME_3_TURN_FRONT_SW_NW_SEQ_3 },
};
track_paint_util_right_quarter_turn_3_tiles_paint_2(2, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], imageIds, get_current_rotation());
track_paint_util_right_quarter_turn_3_tiles_paint_2_with_height_offset(0, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], imageIdsFront, get_current_rotation(), 27);
track_paint_util_right_quarter_turn_3_tiles_paint_2(session, 2, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], imageIds, get_current_rotation());
track_paint_util_right_quarter_turn_3_tiles_paint_2_with_height_offset(session, 0, height, direction, trackSequence, gTrackColours[SCHEME_TRACK], imageIdsFront, get_current_rotation(), 27);
if (trackSequence != 1 && trackSequence != 2) {
metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, gTrackColours[SCHEME_SUPPORTS]);
@ -645,7 +645,7 @@ static void paint_log_flume_track_on_ride_photo(paint_session * session, uint8 r
imageId = LogFlumeTrackFlatImageIds[direction][1] | gTrackColours[SCHEME_TRACK];
sub_98197C_rotated(direction, imageId, 0, 0, 32, 1, 21, height, 0, 27, height + 5);
track_paint_util_onride_photo_paint(direction, height + 3, mapElement);
track_paint_util_onride_photo_paint(session, direction, height + 3, mapElement);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);

View File

@ -289,7 +289,7 @@ static void paint_river_rapids_station(paint_session * session, uint8 rideIndex,
rct_ride *ride = get_ride(rideIndex);
paint_river_rapids_track_flat(session, rideIndex, trackSequence, direction, height, mapElement);
track_paint_util_draw_station_platform(ride, direction, height, 12, mapElement);
track_paint_util_draw_station_platform(session, ride, direction, height, 12, mapElement);
paint_util_set_general_support_height(height + 32, 0x20);
}
@ -695,7 +695,7 @@ static void paint_river_rapids_track_rapids(paint_session * session, uint8 rideI
static void paint_river_rapids_track_on_ride_photo(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
paint_river_rapids_track_flat(session, rideIndex, trackSequence, direction, height, mapElement);
track_paint_util_onride_photo_paint(direction, height + 13, mapElement);
track_paint_util_onride_photo_paint(session, direction, height + 13, mapElement);
paint_util_set_general_support_height(height + 48, 0x20);
}

View File

@ -740,7 +740,7 @@ static void paint_splash_boats_station(paint_session * session, uint8 rideIndex,
wooden_a_supports_paint_setup(session, (direction & 1), 0, height, gTrackColours[SCHEME_SUPPORTS], NULL);
track_paint_util_draw_station_platform(ride, direction, height, 7, mapElement);
track_paint_util_draw_station_platform(session, ride, direction, height, 7, mapElement);
paint_util_push_tunnel_rotated(direction, height, TUNNEL_6);
@ -751,8 +751,8 @@ static void paint_splash_boats_station(paint_session * session, uint8 rideIndex,
/** rct2: 0x0089B1D0 */
static void paint_splash_boats_track_left_quarter_turn_5_tiles(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
track_paint_util_right_quarter_turn_5_tiles_paint_2(height, direction, get_current_rotation(), trackSequence, gTrackColours[SCHEME_TRACK], RiverRaftsLeftQuarterTurn5_Top);
track_paint_util_right_quarter_turn_5_tiles_paint_2(height, direction, get_current_rotation(), trackSequence, gTrackColours[SCHEME_TRACK], RiverRaftsLeftQuarterTurn5_Side);
track_paint_util_right_quarter_turn_5_tiles_paint_2(session, height, direction, get_current_rotation(), trackSequence, gTrackColours[SCHEME_TRACK], RiverRaftsLeftQuarterTurn5_Top);
track_paint_util_right_quarter_turn_5_tiles_paint_2(session, height, direction, get_current_rotation(), trackSequence, gTrackColours[SCHEME_TRACK], RiverRaftsLeftQuarterTurn5_Side);
if (trackSequence != 1 && trackSequence != 4) {
static const uint8 supportTypes[][7] = {
@ -794,8 +794,8 @@ static void paint_splash_boats_track_left_quarter_turn_5_tiles(paint_session * s
/** rct2: 0x0089B1D0 */
static void paint_splash_boats_track_right_quarter_turn_5_tiles(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
track_paint_util_right_quarter_turn_5_tiles_paint_2(height, direction, get_current_rotation(), trackSequence, gTrackColours[SCHEME_TRACK], RiverRaftsRightQuarterTurn5_Top);
track_paint_util_right_quarter_turn_5_tiles_paint_2(height, direction, get_current_rotation(), trackSequence, gTrackColours[SCHEME_TRACK], RiverRaftsRightQuarterTurn5_Side);
track_paint_util_right_quarter_turn_5_tiles_paint_2(session, height, direction, get_current_rotation(), trackSequence, gTrackColours[SCHEME_TRACK], RiverRaftsRightQuarterTurn5_Top);
track_paint_util_right_quarter_turn_5_tiles_paint_2(session, height, direction, get_current_rotation(), trackSequence, gTrackColours[SCHEME_TRACK], RiverRaftsRightQuarterTurn5_Side);
if (trackSequence != 1 && trackSequence != 4) {
static const uint8 supportTypes[][7] = {

View File

@ -81,13 +81,13 @@ static void submarine_ride_paint_track_station(paint_session * session, uint8 ri
sub_98197C(imageId, 0, 0, 20, 32, 3, heightLower, 6, 0, heightLower, get_current_rotation());
paint_util_push_tunnel_right(height, TUNNEL_6);
track_paint_util_draw_pier(ride, entranceStyle, position, direction, height, mapElement, get_current_rotation());
track_paint_util_draw_pier(session, ride, entranceStyle, position, direction, height, mapElement, get_current_rotation());
} else {
imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_NE_SW | gTrackColours[SCHEME_TRACK];
sub_98197C(imageId, 0, 0, 32, 20, 3, heightLower, 0, 6, heightLower, get_current_rotation());
paint_util_push_tunnel_left(height, TUNNEL_6);
track_paint_util_draw_pier(ride, entranceStyle, position, direction, height, mapElement, get_current_rotation());
track_paint_util_draw_pier(session, ride, entranceStyle, position, direction, height, mapElement, get_current_rotation());
}
paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0);
@ -120,8 +120,8 @@ static void submarine_ride_paint_track_flat(paint_session * session, uint8 rideI
static void submarine_ride_paint_track_left_quarter_turn_3_tiles(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
track_paint_util_left_quarter_turn_3_tiles_paint(3, height - 16, direction, trackSequence, gTrackColours[SCHEME_TRACK], trackSpritesSubmarineRideMiniHelicoptersQuarterTurn3Tiles, get_current_rotation());
track_paint_util_left_quarter_turn_3_tiles_tunnel(height - 16, TUNNEL_0, direction, trackSequence);
track_paint_util_left_quarter_turn_3_tiles_paint(session, 3, height - 16, direction, trackSequence, gTrackColours[SCHEME_TRACK], trackSpritesSubmarineRideMiniHelicoptersQuarterTurn3Tiles, get_current_rotation());
track_paint_util_left_quarter_turn_3_tiles_tunnel(session, height - 16, TUNNEL_0, direction, trackSequence);
switch (trackSequence) {
case 0:
@ -149,8 +149,8 @@ static void submarine_ride_paint_track_right_quarter_turn_3_tiles(paint_session
static void submarine_ride_paint_track_left_quarter_turn_1_tile(paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, rct_map_element * mapElement)
{
track_paint_util_left_quarter_turn_1_tile_paint(1, height - 16, 0, direction, gTrackColours[SCHEME_TRACK], trackSpritesSubmarineRideMiniHelicoptersQuarterTurn1Tile, get_current_rotation());
track_paint_util_left_quarter_turn_1_tile_tunnel(direction, height - 16, 0, TUNNEL_0, 0, TUNNEL_0);
track_paint_util_left_quarter_turn_1_tile_paint(session, 1, height - 16, 0, direction, gTrackColours[SCHEME_TRACK], trackSpritesSubmarineRideMiniHelicoptersQuarterTurn1Tile, get_current_rotation());
track_paint_util_left_quarter_turn_1_tile_tunnel(session, direction, height - 16, 0, TUNNEL_0, 0, TUNNEL_0);
paint_util_set_segment_support_height(paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C8 | SEGMENT_C4 | SEGMENT_D0, direction), 0xFFFF, 0);
paint_util_set_general_support_height(height + 16, 0x20);