/** rct2: 0x00811324 */ static void paint_virginia_reel_track_left_quarter_turn_1_tile( paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, const rct_tile_element * tileElement) { track_paint_util_left_quarter_turn_1_tile_paint( session, 2, height, 0, direction, session->TrackColours[SCHEME_TRACK], virginia_reel_track_pieces_flat_quarter_turn_1_tile, session->CurrentRotation); switch (direction) { case 0: wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS], nullptr); paint_util_push_tunnel_left(session, height, TUNNEL_6); break; case 1: wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS], nullptr); break; case 2: wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS], nullptr); paint_util_push_tunnel_right(session, height, TUNNEL_6); break; case 3: wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS], nullptr); paint_util_push_tunnel_right(session, height, TUNNEL_6); paint_util_push_tunnel_left(session, height, TUNNEL_6); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(session, height + 32, 0x20); }
/** rct2: 0x00811324 */ static void paint_virginia_reel_track_left_quarter_turn_1_tile(uint8 rideIndex, uint8 trackSequence, uint8 direction, int 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()); switch (direction) { case 0: wooden_a_supports_paint_setup(5, 0, height, gTrackColours[SCHEME_SUPPORTS], NULL); paint_util_push_tunnel_left(height, TUNNEL_6); break; case 1: wooden_a_supports_paint_setup(2, 0, height, gTrackColours[SCHEME_SUPPORTS], NULL); break; case 2: wooden_a_supports_paint_setup(3, 0, height, gTrackColours[SCHEME_SUPPORTS], NULL); paint_util_push_tunnel_right(height, TUNNEL_6); break; case 3: wooden_a_supports_paint_setup(4, 0, height, gTrackColours[SCHEME_SUPPORTS], NULL); paint_util_push_tunnel_right(height, TUNNEL_6); paint_util_push_tunnel_left(height, TUNNEL_6); break; } paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(height + 32, 0x20); }
/** rct2: 0x0081F408 */ static void paint_mini_helicopters_track_left_quarter_turn_1_tile(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); 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); }
/** rct2: 0x00770CAC */ static void paint_ghost_train_track_left_quarter_turn_1_tile(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); metal_a_supports_paint_setup(METAL_SUPPORTS_BOXED, 4, 0, height, gTrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(height + 32, 0x20); }
/** rct2: 0x0081F408 */ static void paint_mini_helicopters_track_left_quarter_turn_1_tile( paint_session* session, ride_id_t rideIndex, uint8_t trackSequence, uint8_t direction, int32_t height, const TileElement* tileElement) { track_paint_util_left_quarter_turn_1_tile_paint( session, 1, height, 0, direction, session->TrackColours[SCHEME_TRACK], trackSpritesSubmarineRideMiniHelicoptersQuarterTurn1Tile); track_paint_util_left_quarter_turn_1_tile_tunnel(session, direction, height, 0, TUNNEL_0, 0, TUNNEL_0); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C8 | SEGMENT_C4 | SEGMENT_D0, direction), 0xFFFF, 0); paint_util_set_general_support_height(session, height + 32, 0x20); }
/** rct2: 0x00770CAC */ static void paint_ghost_train_track_left_quarter_turn_1_tile( paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, const rct_tile_element * tileElement) { track_paint_util_left_quarter_turn_1_tile_paint( session, 3, height, 0, direction, session->TrackColours[SCHEME_TRACK], ghost_train_track_pieces_quarter_turn_1_tile); 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, session->TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(session, height + 32, 0x20); }
static void submarine_ride_paint_track_left_quarter_turn_1_tile( paint_session * session, uint8 rideIndex, uint8 trackSequence, uint8 direction, sint32 height, const rct_tile_element * tileElement) { track_paint_util_left_quarter_turn_1_tile_paint( session, 1, height - 16, 0, direction, session->TrackColours[SCHEME_TRACK], trackSpritesSubmarineRideMiniHelicoptersQuarterTurn1Tile, session->CurrentRotation); 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( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C8 | SEGMENT_C4 | SEGMENT_D0, direction), 0xFFFF, 0); paint_util_set_general_support_height(session, height + 16, 0x20); }