diff --git a/src/ride/coaster/reverse_freefall_coaster.c b/src/ride/coaster/reverse_freefall_coaster.c index f6ab87d8fb..1615d48ae2 100644 --- a/src/ride/coaster/reverse_freefall_coaster.c +++ b/src/ride/coaster/reverse_freefall_coaster.c @@ -209,11 +209,11 @@ static void paint_reverse_freefall_rc_flat(uint8 rideIndex, uint8 trackSequence, if (direction & 1) { uint32 imageId = SPR_REVERSE_FREEFALL_RC_FLAT_NW_SE | gTrackColours[SCHEME_TRACK]; sub_98197C(imageId, 0, 0, 20, 32, 1, height, 6, 0, height, get_current_rotation()); - paint_util_push_tunnel_right(height, TUNNEL_0); + paint_util_push_tunnel_right(height, TUNNEL_6); } else { uint32 imageId = SPR_REVERSE_FREEFALL_RC_FLAT_SW_NE | gTrackColours[SCHEME_TRACK]; sub_98197C(imageId, 0, 0, 32, 20, 1, height, 0, 6, height, get_current_rotation()); - paint_util_push_tunnel_left(height, TUNNEL_0); + paint_util_push_tunnel_left(height, TUNNEL_6); } wooden_a_supports_paint_setup((direction & 1) ? 1 : 0, 0, height, gTrackColours[SCHEME_SUPPORTS], NULL); @@ -282,8 +282,8 @@ static void paint_reverse_freefall_rc_slope(uint8 rideIndex, uint8 trackSequence paint_util_push_tunnel_left(height, TUNNEL_6); } else { sint8 bbHeight = bbHeights12[trackSequence]; - sub_98197C_rotated(direction, trackImageId, 0, 0, 32, 20, bbHeight, height, 0, 6, height); - sub_98199C_rotated(direction, supportsImageId, 0, 0, 32, 20, bbHeight, height, 0, 6, height); + sub_98197C_rotated(direction, supportsImageId, 0, 0, 32, 20, bbHeight, height, 0, 6, height); + sub_98199C_rotated(direction, trackImageId, 0, 0, 32, 20, bbHeight, height, 0, 6, height); paint_util_push_tunnel_right(height, TUNNEL_6); } wooden_a_supports_paint_setup(direction & 1, 0, height, gTrackColours[SCHEME_SUPPORTS], NULL); @@ -333,7 +333,11 @@ static void paint_reverse_freefall_rc_vertical(uint8 rideIndex, uint8 trackSeque break; case 1: trackImageId = reverse_freefall_rc_track_pieces_vertical[direction] | gTrackColours[SCHEME_TRACK]; - sub_98197C_rotated(direction, trackImageId, 0, 0, 2, 20, 79, height, 0, 6, height); + if (direction == 0 || direction == 3) { + sub_98197C_rotated(direction, trackImageId, 0, 0, 2, 20, 79, height, 0, 6, height); + } else { + sub_98197C_rotated(direction, trackImageId, 0, 0, 2, 20, 79, height, 30, 6, height); + } paint_util_set_vertical_tunnel(height + 80); paint_util_set_segment_support_height(SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(height + 80, 0x20); diff --git a/test/testpaint/testpaint.vcxproj.user b/test/testpaint/testpaint.vcxproj.user index 2d0a6983e6..1bb4d146b6 100644 --- a/test/testpaint/testpaint.vcxproj.user +++ b/test/testpaint/testpaint.vcxproj.user @@ -4,8 +4,13 @@ $(TargetDir)\openrct2.exe $(TargetDir) WindowsLocalDebugger + --ride-type 4 - true + false + + + --ride-type 4 + WindowsLocalDebugger \ No newline at end of file